1

Привет Мне нужно создать пользовательский класс переключателя с двумя разными изображениями для каждого состояния и RTL-текста. Я сделал кнопку, но я не смог сделать RTL текста для api 8 и upper. я был бы рад, если кто-нибудь может помочь мнеright alignment text radio button android programaticallyly

RadioGroup crdg = (RadioGroup) findViewById(R.id.radioGroup11);

делают Радиокнопка

rdbt1 = new RadioButton(new ContextThemeWrapper(
      getApplicationContext(), R.style.styleName)); 

    rdbt1.setButtonDrawable(android.R.color.transparent); 

rdbt1.setText("for example(RTL text)"); 

добавить RadioButton в Radio Group

crdg.addView(rdbt1); 

StyleName является

<style name="styleName" parent="android:Widget.CompoundButton.RadioButton"> <item name="android:button">@null</item> <item name="android:drawableRight">@drawable/rdb_question_selector</item> </style>

+0

Можете ли вы отправить XML тоже пожалуйста? –

+0

Я не использую Xml, потому что хочу создать радиокнопку в java-коде –

ответ

0

Вы просто должны установить тяжести Gravity.END Так, например:

RadioButton tempRadioButton = new RadioButton(this); 
tempRadioButton.setGravity(Gravity.END); 
tempRadioButton.setText("for example(RTL text)"); 

Это покажет Android, чтобы выровнять текст в «конец» зрения уважающего RTL языков.

+0

не работает –

0

добавить

forceRTLIfSupported();

в вашем OnCreate()

@TargetApi(Build.VERSION_CODES.JELLY_BEAN_MR1) 
    private void forceRTLIfSupported() 
    { 
     if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR1){ 
      getWindow().getDecorView().setLayoutDirection(View.LAYOUT_DIRECTION_RTL); 
     } 
    }