У меня этот пользовательский макет в моей панели приложений. Моя проблема заключается в том, что не только текст не отображается полностью, но и он остается слева, а не справа. Я установил все атрибуты gravity, direction layout_gravity вправо и rtl как в коде, так и в файлах layout.xml. Но успеха нет.Textview внутри пользовательского макета ActionBar не идет rtl
Вот скриншот: (как можно видеть только "правильную" часть текста "Если придерживаться правой" внутри TextView показано.)
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical|right"
android:background="@color/black1"
android:gravity="right|center_vertical"
android:layoutDirection="rtl"
android:orientation="horizontal">
<ImageView
android:id="@+id/search_mag_icon"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@color/blue4main"
android:src="@drawable/abc_ic_search_api_mtrl_alpha" />
<com.jahanjooy.haftdong.views.DelayAutoCompleteTextView
android:id="@+id/text_view_vicinity"
android:layout_width="150dp"
android:layout_height="wrap_content"
android:background="@color/black1"
android:gravity="right"
android:imeOptions="flagNoExtractUi|actionSearch"
android:inputType="textCapSentences"
android:layoutDirection="rtl"
android:shadowColor="@color/white1"
android:textColor="@android:color/white" />
<TextView
android:id="@+id/text_view_hint"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical|right"
android:background="@color/blue1"
android:gravity="right"
android:layoutDirection="rtl"
android:text="should go right"
android:textColor="@color/white1"
android:textSize="15dp" />
<ProgressBar
android:id="@+id/progress_bar"
style="?android:attr/progressBarStyleSmall"
android:layout_width="20dp"
android:layout_height="20dp"
android:indeterminate="true"
android:indeterminateTint="@android:color/white"
android:indeterminateTintMode="src_atop"
android:visibility="gone" />
<ImageView
android:id="@+id/ic_filter_cone"
android:layout_width="30dp"
android:layout_height="30dp"
android:src="@drawable/ic_filter" />
активность:
/**/
/**/
Toolbar parent =(Toolbar) layout.getParent();//first get parent toolbar of current action bar
parent.setContentInsetsAbsolute(100,10);
DisplayMetrics metrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(metrics);
ActionBar.LayoutParams lp = (ActionBar.LayoutParams) layout.getLayoutParams();
lp.rightMargin= 0;
lp.width = metrics.widthPixels/2;
lp.gravity = Gravity.RIGHT;
layout.setLayoutParams(lp);
layout.setLayoutDirection(View.LAYOUT_DIRECTION_RTL);
TextView hint = (TextView) findViewById(R.id.text_view_hint);
LinearLayout.LayoutParams ll= (LinearLayout.LayoutParams) hint.getLayoutParams();
ll.rightMargin = 0;
ll.width = metrics.widthPixels/2;
ll.gravity = Gravity.RIGHT;
hint.setLayoutParams(ll);
hint.setLayoutDirection(View.LAYOUT_DIRECTION_RTL);
hint.setTextDirection(View.TEXT_DIRECTION_RTL);
/**/