تعذر توسيط المحتوى أفقيًا في TitleView.
يسعدني أن أرى هذه الميزة في XF ولكني أرغب في تقديم بعض الأفكار بناءً على هذه المشكلة حول كيفية جعل هذه الميزة أكثر فائدة.
لا يمكننا توسيط محتوى العرض المخصص أفقيًا نسبيًا على شاشة الجهاز ، ويعتمد ذلك على ما إذا كان هناك زر رجوع أم لا ، أو العنصر (العناصر) الأيمن أم لا ، وما إلى ذلك.
يجب أن يتم توسيط محتوى TitleView بشكل صحيح.
كما يمكننا أن نرى النقطة المركزية الأفقية المنطقية لمحتوى TitleView لن يتم توسيطها أبدًا بواسطة نقطة المركز الأفقية لشاشة الهاتف. لذلك ، لا يمكننا وضع أي صورة أو محتوى ديناميكي لإنشاء شيء من هذا القبيل (صورة عشوائية من الإنترنت):
تمركز محتوى TitleView بطريقة خاطئة. لا يمكننا السيطرة على ذلك.
الأطر المستهدفة للمنصة:
حزم نوجيت:
أشكال Xamarin 3.4.0
لقد قدمت مثالًا قصيرًا ، يمكنك اتباع هذا الرابط لرؤيتها في التعليمات البرمجية ، استنادًا إلى مثال Xamarin.Forms.ControlGallery الخاص بـ XF في هذا الفرع - فقط قم باستنساخ وتشغيل تطبيق iOS ، ثم حدد عرض العنوان ثم BDF: TitleView Centered ، ادمج مع تبديل عنصر شريط الأدوات
لقد صنعت بعض الأمثلة النظرية في محاولة لتقديم حل ممكن حول كيفية حلها. بشكل عام ، نحتاج إلى تحديد حجم وموضع حاوية TitleView للسماح بتوسيط محتواها.
سلوك "حاوية العرض" هو نفسه الآن.
يجب أن تستخدم حاوية العرض كل مساحة شريط التنقل. يمكننا تجاوز بعض عناصر التحكم من خلال محتواها ، ولكن لا بأس بذلك في بعض المواقف.
يجب أن يشغل حجم حاوية العرض كل المساحة الخالية فيما يتعلق بعناصر شريط التنقل ويتم تثبيتها في مركز الشريط.
أعتقد أنه من الأفضل تغيير النوع من [تحسين] إلى إصدار لأنه يمثل مشكلة أكثر من التحسين
علم. في الوقت الحالي ، إذا كان لديك أي عناصر أخرى في شريط التنقل ، فهذا يجعل المظهر غير مرغوب فيه ولا يستحق استخدامه على الإطلاق.
هذه مشكلة خطيرة بالنسبة لنا ، ننتظر حاليًا حلها.
تضمين التغريدة
هل لديك أي تحديثات على هذا؟
إنه مانع بالنسبة لنا لتحديث إصدار XF لحوالي 5 تطبيقات
شكرا لك!
لا تزال هذه مشكلة في شل وليس لها حل بديل معقول أعلم به. اختراق الهامش السلبي عرضة لسوء التقدير. زيادة التأثير.
أهلا،
عمل رائع في كل مكان !! ولكن بالنسبة لعنصر التحكم هذا ، يبدو أن "TitleView" قد تم إغلاقه في كل مكان ، فهل لن يتم إصلاح هذه المشكلة بعد الآن؟ لا يمكن استخدامه على الإطلاق إذا لم يتم توسيطه. هل هي إعادة كتابة؟ لقد وضعت هامشًا سلبيًا باعتباره اختراقًا أيضًا ، لكنني أتساءل عما إذا كان الاختراق الخاص بي يعمل على جميع الأجهزة ... هل يمكن لأي شخص أن يخبرنا بما يجب القيام به على هذا الجهاز. تشكرات
لقد واجهت مؤخرًا هذه المشكلة بالذات في مشروع Xamarin iOS ولا توجد طريقة لحلها باستخدام عناصر واجهة المستخدم التي توفرها iOS. إذا كنت تستخدم UIBarButtonItem
s في UINavigationItem
، فلن يخبرك نظام التشغيل بمدى اتساعها بعد عرضها ، لذلك لا توجد طريقة لتعيين قيود أو أحجام على Title
عرض للتعويض.
في النهاية ، تخليت عن كل شيء ونفذت شريط الأدوات الخاص بي باستخدام حاوية عادية UIView
، و UIButton
s لأزرار شريط الأدوات ، مع UILabel
في المنتصف (بشكل صحيح تتمحور ، لأنها كانت سهلة).
ما نحتاجه من نماذج Xamarin في هذه المرحلة هو القدرة على توفير ContentView
الذي ستضعه النماذج في UINavigationBar
، الممتد عبر الشريط بأكمله. من السهل القيام بذلك ، ولكن لا تستخدم خاصية UINavigationBar
's Title
- سيتعين على النماذج إضافة ContentView
كعرض فرعي لـ NavigationBar
بحد ذاتها. ثم يمكننا تعيين المحتوى الخاص بنا داخل ContentView
باستخدام Button
s ، Label
s إلخ ، وترتيبها بشكل صحيح.
أنا أيضًا أبحث عن حل لهذا. تم وضع علامة عليه كنسخة مكررة ولكن تم إغلاق التكرار ويشير إلى هذه المشكلة. هل هناك حل لهذا يجري النظر فيه؟
samhouts مرحبًا ، أي خطة لإصلاح هذا؟ وبقدر ما أعرف ، فإن الكثير من الناس ينتبهون لهذه المشكلة.
ولكن بعد مرور عامين تقريبًا ، لم يتم إصلاحه بعد.
للأسف بقيت القضية حتى مع إدخال القشرة
للأسف لا يبدو أنها أولوية.
الاحتفال بسنة واحدة لهذا الإصدار. 🍾🥂 🎂
يبدو أن بعض تطبيقات Android الافتراضية لها السلوك الموصوف
هذا ينفخ. يجعل تطبيقاتنا تبدو سيئة.
هذا مزعج جدا. هل يمتلك أحد حلا للمشكة؟
@ julioas09 فعلت ذلك مرة واحدة ولكن نسيت كيف فعلت. لكنني كنت أشير إلى هذين المصدرين وقمت بعملهما. لذلك أعتقد أنه يمكنك أيضًا الرجوع إليهم والقيام بذلك.
نحاول حاليًا توسيط صورة في TitleView للوصول إلى بعض تصميمات UX وهذا يتسبب في إزاحة الصورة إلى اليمين نظرًا لوجود زر الرجوع على اليسار ، خارج TitleView.
الحل البديل: قم بتنفيذ عرض عنوان يحتوي على زر الرجوع فيه بالإضافة إلى الصورة ، ثم اضبط أزرار عنصر التنقل على قيمة خالية. هذا _يجب_ جعل طريقة عرض العنوان تملأ العرض الكامل لشريط التنقل.
حقا بحاجة إلى هذا ..... zZz
programmation هل لديك مثال على ذلك؟
تضمين التغريدة
أعرف شيئًا عن إخفاء رمز الهامبرغر
<Shell.FlyoutIcon>
<x:String></x:String>
</Shell.FlyoutIcon>
لكنها ليست مثالية ، لا يزال الهامش الأيسر أكبر قليلاً من الهامش الأيمن.
نحاول حاليًا توسيط صورة في TitleView للوصول إلى بعض تصميمات UX وهذا يتسبب في إزاحة الصورة إلى اليمين نظرًا لوجود زر الرجوع على اليسار ، خارج TitleView.
الحل البديل: قم بإنشاء زر وهمي وفارغ ولا تفعل شيئًا للجانب الآخر من شريط التنقل.
آسف على التأخير في الرد عليك! لقد نشرت أيضًا حلًا آخر نجح معي في الماضي (لكنني لا أستخدم شل لذا لست متأكدًا مما إذا كان سيساعد هنا): قم بإنشاء زر وهمي للجانب الأيمن من شريط التنقل. يمكنك استخدام لون النص == لون الخلفية لجعله غير مرئي ، وتغيير حجمه بجعله يحتوي على نفس نص الزر الموجود على الجانب الأيسر.
في 24 مارس 2020 الساعة 20:43 ، كتب jaspervanmegroot [email protected] :
programmation https://github.com/programmation هل لديك مثال على ذلك؟
-
أنت تتلقى هذا لأنه تم ذكرك.
قم بالرد على هذه الرسالة الإلكترونية مباشرةً ، أو قم بعرضها على GitHub https://github.com/xamarin/Xamarin.Forms/issues/4848#issuecomment-603134653 ، أو إلغاء الاشتراك https://github.com/notifications/unsubscribe-auth/ACNA4OOTRYXWHCX4GKUPEHDRJB6CLANCX4GKUPEHDRJB6CLANCX4GKUPEHDRJB6CLANCX4GKUPEHDRJB6CLANC
@ البرمجة شكرا!
إنه يعمل بشكل أساسي ، ولكنه محرج بعض الشيء لأنه إذا قمت بوضع عناصر شريط الأدوات ، فسيتم دفع Shell.TitleView
أيضًا إلى اليسار ، لذلك إما أنك لا تستخدمها ، فإما أن العنوان الخاص بك ينتقل من صفحة واحدة من اليمين إلى اليسار والعكس صحيح.
@ eli191 أوافق على أنه ليس مثاليًا حقًا ، ولكن هذا كان أفضل حل بديل لدي أثناء استخدام XF المقدم من XF NavigationPage
. بشكل عام ، أنا لست معجبًا بالتخصيصات التي تم تطبيقها على UINavigationController
الأساسي ، والتي تعتبر مسؤولة جزئيًا عن مدى صعوبة القيام بما تحاول القيام به. أفكر في الغالب أنه سيكون من الأسهل إنشاء كائن NavigationBar
باستخدام برامج عرض النظام الأساسي (قد لا تحتاج إلى أي شيء على الرغم من ذلك) ، ثم استخدم ControlTemplate
لتطبيقه على الصفحات التي تريده ، أثناء إزالة شريط التنقل "الرسمي" من NavigationPage
. سيكون بالتأكيد أبسط عندما يتعلق الأمر بأشياء مثل تطبيق ألوان مخصصة على خلفية التنقل ، كما أنه سيسمح بالتحكم الكامل في مكدسات الزر الأيمن والأيسر.
programmation هل لديك مثال لمشروع على جيثب؟
لا تزال تواجه هذه المشكلة في أغسطس 2020. سنواجه قريبًا عامين من هذا الخطأ. هل هناك خطة لإصلاحها؟
نحن الآن كيف الميزات الممتازة مثل عرض السحب والإفلات والتمرير السريع لكنني ما زلت أكافح لتوسيط العنوان.
هل هناك أي احتمال لإصلاح هذا في أي وقت قريب؟ ربما في XF 5
التعليق الأكثر فائدة
هذه مشكلة خطيرة بالنسبة لنا ، ننتظر حاليًا حلها.