Значок индикатора расширяемого списка в Android
У меня есть расширяемый вид списка в моем навигационном ящике. Я пытаюсь установить значок и заставить его показать, что это правильно.
У меня есть два вопроса:
Каким должен быть размер иконки индикатора? 32 * 32? показывает размытым, я хочу, чтобы простой значок плюс и значок минус.
Также я пытаюсь разместить значок индикатора справа? Я не могу этого сделать?
Я перепробовал все способы, но не работал, вот один из них:
@Override
public void onWindowFocusChanged(boolean hasFocus)
{
super.onWindowFocusChanged(hasFocus);
metrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(metrics);
width = metrics.widthPixels;
if(android.os.Build.VERSION.SDK_INT < android.os.Build.VERSION_CODES.JELLY_BEAN_MR2)
{
expListView.setIndicatorBounds(width - GetDipsFromPixel(50), width - GetDipsFromPixel(10));
}
else
{
expListView.setIndicatorBoundsRelative(width - GetDipsFromPixel(50), width - GetDipsFromPixel(10));
}
}
Я тестирую приложение на Nexus 5(5.0) и Galaxy Nexus (4.3).
Может ли кто-нибудь помочь мне с этим?
1 ответ
Наконец-то решил проблему сам. Надеюсь, что приведенный ниже ответ будет полезен для тех, кто пытается переместить индикатор группы вправо и т. Д.
Вместо "android:groupIndicator" я добавил imageView в список групп.
<ImageView
android:id="@+id/expandableIcon"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_marginRight="15dp"
android:src="@drawable/plus"
android:visibility="invisible"
tools:ignore="RtlHardcoded" />
Затем в BaseExpandableListAdapter место, где вызывается groupView:
Я использовал:
if(groupPosition != -1)
{
int imageResourceId = isExpanded ? R.drawable.plus : R.drawable.minus;
image.setImageResource(imageResourceId);
image.setVisibility(View.VISIBLE);
}
else
{
image.setVisibility(View.INVISIBLE);
}
Выше это просто обходной путь вместо индикатора группы по умолчанию. Это решает проблему.
Все еще не в состоянии выяснить фактический размер для groupindicator? на данный момент я использую 25*25, кажется, идет хорошо, но я бы сказал, что должен быть лучший размер, чтобы показать хорошее качество.
Спасибо!