سؤال

لتخصيص النظرة المرئية من Uislider، يمكنك ضبط الصور الإبهام وتتبعها. يمتد جزء من الصور المسار إلى المناسب مع. من الوثائق:

تقع منطقة مطاطية بين منطقتين نهاية سقف. تحدد قبعات النهاية أجزاء الصورة التي لا تزال كما هي ولا تمتد. المنطقة المطاط هي مساحة واسعة من 1 نقطة بين قبعات النهاية التي يمكن تكرارها لجعل الصورة تظهر أطول.

الآن المشكلة التي لدي هي أن منطقتي المطاط تحتاج إلى أن تكون أكثر من 1 نقطة واسعة. (إنه نمط) لسوء الحظ يبدو أن العرض 1 نقطة مشفرة بجد في SDK.

أي شخص لديه فكرة عن كيفية العمل حول هذا؟ أو هل يجب علي كتابة شريط التمرير الخاص بي من الصفر لهذا الغرض؟

هل كانت مفيدة؟

المحلول

أعتقد أنك سوف تضطر إلى كتابة شريط التمرير الخاص بك للقيام بذلك. يبدو أن هناك واجهة برمجة تطبيقات (عامة) لتغيير سلوك Usislider بشأن المنطقة المطاط.

نصائح أخرى

ما عليك سوى استخدام الصور الشفافة كصور المسار، ووضع UiimageView أدناه :)

وأنا أعلم أنها الإجابة المتأخرة.

لكنني حل المشكلة كما يلي:

4 هو عرض الغطاء المستدير في ملف PNG.

UIImage *minimum = [UIImage imageNamed:@"slider_minimum.png"];
[slider setMinimumTrackImage:[minimum stretchableImageWithLeftCapWidth:4 topCapHeight:0]
                      forState:UIControlStateNormal];

يمكنك فقط إنشاء الصور لتكون واسعة كما تحتاج إليها، مع النمط الذي تم تقديمه مسبقا.

تحتاج إلى تهيئة صورتك باستخدام PancedAmableimageWithleftCapWidth: TopCapheight :. الأيسر الأيسر و TopCapheight هي خصائص للقراءة فقط على كائنات الصورة، ولكن باستخدام هذه الوظيفة يمكنك ضبطها. يمكنك ضبط الأيسر والأعلى فقط لأن الأغطية اليسرى والأيمن هي نفس الحجم، والأعلى والأسفل هي أيضا نفسها. لذلك، لاستخدام مسار منزلق مخصص مع حجم الجانب الأيسر من 5 بكسل، تحتاج إلى الحصول على صورة 11 بكسل على نطاق واسع، من خلال أي ارتفاع تحتاجه: 5 بالنسبة للغطاء الأيسر، 1 بكسل واسعة واحدة تمتد للمسار، و 5 أكثر للحق. بعد أن لم تلعب معها، لا أعرف ما إذا كنت تستخدم TopCapheight أكبر من 0 يعمل كما هو متوقع، لكنني أظن أنه لن يسبب قدرا كبيرا من المشاكل.

كنت أرغب في نمط وراء بلدي Usislider. انتهى بي الأمر بوضع كل من الصور إلى NIL وإضافة طريقة عرض أسفل المنزلق لأنني لم أكن بحاجة إلى أن أكون مختلفا على جانبي الإبهام. سيكون هذا أكثر صعوبة إذا كنت بحاجة إلى تغييره بناء على الموقف، ولكن قابلة للتنفيذ تماما.

لجعل uislider مخصص لديك طرق كثيرة. اعتمادا على التخصيص الذي تريده. هناك خصائص افتراضية يمكنك تعيينها لتخصيص Usislider الخاص بك، مثل التالي: setthumbimage: forstate: setminimumtrackimage: forstate: setmaximumtrackimage: forstate: إذا كنت تريد مزيد من التخصيص، يمكنك الرجوع إلى الرابط أدناهhttps://medium.com/70209neha/creating-a-custom-uislider-7756bf898832#.o1l4qhymo. https://github.com/0209neha/exploringslider.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top