3

Я искал способ, чтобы отобразить путь к файлу в панели инструментов, как это: Android - Показать путь к файлу в панели инструментов

Она должна быть интерактивными и должна быть Перелистываемыми, если это длинный путь. (Или небольшое устройство).

Я думал об использовании HorizontalScrollView с TextView и ImageView, но не знаю, является ли это наилучшим способом для этого. Есть ли лучший (более простой) способ сделать это? Благодаря!

Edit:

С благодаря @aelimill я узнал, что RecyclerView может идти горизонтально, но я все еще возникают некоторые проблемы. Если щелкнуть по тексту в предыдущем скриншоте он показывает это:

Но для меня (после того, как я установил элемент пользовательского списка для кликабельны) это выглядит так:

(Посмотрите анимацию клика)

Как показать анимацию круга так же, как и другие ActionBar элементов?

+1

RecyclerView должна быть оптимальной для этого. – aelimill

+0

@aelimill Не знал, что RecyclerView может идти горизонтально. Это будет идеальное решение. –

+0

LinearLayoutManager (контекстный контекст, ориентация int, логическая обратная ссылка) - вы можете выбрать ориентацию :) – aelimill

ответ

0

Я решил это, используя RecyclerView в качестве предложенного @aelimill. Это элемент пользовательского списка я использовал:

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="wrap_content" 
    android:layout_height="match_parent" 
    android:gravity="center_vertical" 
    android:id="@+id/relativeLayout"> 

    <ImageButton 
     android:layout_width="wrap_content" 
     android:layout_height="match_parent" 
     android:id="@+id/imageButton" 
     android:src="@drawable/ic_keyboard_arrow_right_white_24dp" 
     android:background="@null" 
     android:layout_alignParentLeft="true" 
     android:layout_alignParentStart="true" 
     android:layout_alignTop="@+id/textView" 
     android:layout_alignBottom="@+id/textView" /> 

    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="match_parent" 
     android:id="@+id/textView" 
     android:background="?android:attr/selectableItemBackgroundBorderless" 
     android:clickable="true" 
     android:focusable="true" 
     android:layout_centerVertical="true" 
     android:layout_toRightOf="@+id/imageButton" 
     android:layout_toEndOf="@+id/imageButton" 
     android:gravity="center" 
     android:textSize="16sp" 
     android:minWidth="20dp" 
     android:textColor="#ffffff" 
     android:textAppearance="?android:attr/textAppearanceLarge" /> 

</RelativeLayout> 

Использование selectableItemBackground вместо selectableItemBackgroundBorderless для поддержки предварительно устройств леденец. (Это не будет анимация круга, а анимация прямоугольника).

Смежные вопросы