كيفية توسيع قائمة التنقل في شريط الإجراءات؟
-
12-11-2019 - |
سؤال
في نظام التشغيل Android، يمكنك تعيين قائمة تنقل في شريط الإجراءات عن طريق تمرير المحول الدوار وOnNavigationListener.تكمن المشكلة في أن قائمة التنقل لا تملأ معظم شريط الإجراءات، وكيفية توسيعها مثل تطبيق Gmail:مثال لتطبيق Gmail:
تطبيقي:
وهنا الكود :
//... setting the array adapter
ActionBar actionBar = getActionBar();
actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_LIST);
NavigationListener navigationListener = new NavigationListener();
ListAdapter listAdapter = new ListAdapter();
actionBar.setListNavigationCallbacks(listAdapter, navigationListener);
actionBar.setDisplayShowTitleEnabled(false);
المشكلة الأخرى التي أواجهها هي حجم العنصر الدوار، فهو يظهر صغيرًا جدًا، هل هذا لأنني لا أتمكن من تمرير عرض النص المخصص (انظر لقطة الشاشة)؟مثال على ما أفعله:
private class ListAdapter extends BaseAdapter implements SpinnerAdapter {
public View getView(int pos, View view, ViewGroup viewGroup) {
TextView text = new TextView(context);
text.setText(arrayAdapter.getItem(pos).toString());
return text;
}
}
المحلول
تريد تنفيذ getDropDownView
الطريقة أيضا.يتيح لك هذا توفير طريقة عرض مختلفة للقائمة المنسدلة بالمقاييس والتنسيق الذي تريده.
النظر في تضخيم تخطيطات الإطار android.R.layout.simple_spinner_item
و android.R.layout.simple_spinner_dropdown_item
لهذه الحالات.يستخدم findViewById(android.R.id.text1)
للحصول على TextView
يجب عليك ملء كل واحد.
نصائح أخرى
ربما يمكنك استخدام ActionBar علامة التبويب التنقل وإضافة الرموز إلى علامات التبويب بدلا من التنقل القائمة منذ أن يبدو التنقل في Gmail أشبه علامات التبويب الملاحة.