Расширяемый список Стрелка GroupView должна быть выровнена с текстом, не центрированным в View

1

В настоящее время я определил ExpandableListView, который позволит моему второму списку GroupView содержать над ним GroupView. Однако это не выглядит привлекательным для пользователя, потому что поток стрелки расширения не выравнивается с текстом, а скорее в центре представления. У кого-нибудь есть какие-либо подтексты на то, что я могу сделать, чтобы сделать этот взгляд более привлекательным? Мне нужно иметь заголовок после второй группы.

Изображение 174551

Этот код - это то, что настраивает мой GroupView в моем пользовательском адаптере.

public View getGroupView(int groupPosition, boolean isExpanded, View convertView,
        ViewGroup parent) {

    TextView groupTitle = null;
    LayoutInflater layoutInflater = (LayoutInflater) mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
    View v = null;
    if(groupPosition == 1){
        v = layoutInflater.inflate(R.layout.custom_first_major_language_group_row, null);
    } else {
        v = layoutInflater.inflate(R.layout.custom_language_group_row, null);
    }
    groupTitle = (TextView) v.findViewById(R.id.text_element);
    String myText = this.getGroup(groupPosition).toString();
    groupTitle.setText(myText);

    return v;
}

custom_language_group_row.xml

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" >
    <TextView
        android:id="@+id/text_element"
        android:layout_width="fill_parent"
        android:layout_height="48dip"
        android:textSize="20sp"
        android:textColor="#fff"
        android:layout_marginLeft="48dip"
        android:gravity="center_vertical" 
        android:text = "Language Group Name"/>
</RelativeLayout>

custom_first_major_language_group_row.xml

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" >
         <TextView 
        android:textAppearance="?android:attr/textAppearanceMedium" 
        android:text="Major Languages"
        android:textColor="#000"
        android:background="#fff" 
        android:id="@+id/majorLanguageTitle" 
        android:layout_height="wrap_content" 
        android:layout_width="fill_parent" 
        android:layout_centerHorizontal="true"></TextView>

    <TextView
        android:id="@+id/text_element"
        android:layout_width="fill_parent"
        android:layout_height="48dip"
        android:textSize="20sp"
        android:textColor="#fff"
        android:layout_marginLeft="48dip"
        android:gravity="center_vertical" 
        android:layout_below="@+id/majorLanguageTitle"
        android:text = "Language Group Name"/>
</RelativeLayout>

Если у вас есть идеи о том, как я могу вытащить стрелку вниз, чтобы выровнять ее с текстом, это было бы очень оценено.

  • 0
    Возникла та же проблема ... Я был так взволнован, когда увидел ваш пост. Я думал, что могу получить ответ.
Теги:
expandablelistview
android-layout

1 ответ

0

Таким образом, мой ответ - несколько хромой ответ. У меня была эта проблема, но я заметил, что мой текст был отцентрирован только примерно на 4-5 дп (после тестирования). Таким образом, вместо того, чтобы перемещать изображение разворачивания/сглаживания правильно центрированным, я центрирую текст, а затем добавляю нижнее поле в текстовое представление 5dp. Итак, теперь мое текстовое представление, похоже, намного ближе к изображению expand/collapse.

Не предпочтительное решение, но это сработало для меня.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню