2014-12-16 15 views
7

Mam okno dialogowe z ostrzeżeniem w pliku xml android. Okno alertu ma ikonę po lewej stronie. Chcę zmienić położenie ikony po prawej stronie. I nie chcesz używać custum dialogowe zbytAndroid: zmień pozycję ikony okna dialogowego alertu

tak:

enter image description here

+1

Czy korzystasz z lokalizacji? Czy to są twoje domyślne ciągi? Myślę, że jeśli umieścisz je w arabskim folderze, możesz osiągnąć to zachowanie. – AlexBalo

+0

Lokalizacja w języku perskim powinna działać –

+0

moim kierunkiem jest rtl (od prawej do lewej) i chcę przenieść ikonę po prawej stronie tytułu okna dialogowego –

Odpowiedz

0

A), jeśli masz go jako rozciągliwej w tytule dialogowym (TextView), wystarczy użyć drawableRight

android:drawableRight="@drawable/yourIcon" 

b) Jeśli jest to ImageView/ImageButton w RelativeLayout, użyj alignParentRight

android:layout_alignParentRight="true" 

c) Jeśli jest to ImageView/ImageButton w LinearLayout, umieścić go po TextView

<LinearLayout 
     android:layout_width="300dp" 
     android:layout_height="300dp"> 

     <TextView 
      android:text="some text" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" /> 

     <ImageView 
      android:src="@drawable/yourIcon" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" /> 

</LinearLayout> 

nadzieję, że to pomaga.

0

Aby ustawić kierunek układu okna alertu na RTL, można użyć metody OnShowListener. po ustawieniu tytułu, wiadomości, .... użyj tej metody.

dialog = alertdialogbuilder.create(); 

     dialog.setOnShowListener(new DialogInterface.OnShowListener() { 
      @Override 
      public void onShow(DialogInterface dlg) { 

      dialog.getWindow().getDecorView().setLayoutDirection(View.LAYOUT_DIRECTION_RTL); // set title and message direction to RTL 
      } 
     }); 
     dialog.show(); 
Powiązane problemy