0

奇妙な問題があります。アプリの設定から閲覧可能なライセンス情報を表示したい。内部にDialogPreferenceをホストするだけの非常に単純なカスタムをscrollveiw使用しています。textviewAndroid 2.3.5 を実行しているテスト デバイスでは、ダイアログが非常に暗くて読みにくいことを除いて、すべて正常に動作します。Android > 4.0 を実行しているメイン デバイスで完全に動作します。何が問題なのですか?

Android 2.3.5 では次のようになります。 ここに画像の説明を入力

私のXML:

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_margin="7dp"
    android:orientation="vertical" >

    <TextView
        android:id="@+id/info_textview"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textIsSelectable="false"
        android:layout_margin="7dip" />

</ScrollView>

私のコード:

public class PreferenceDialogOpenSourceLicenses extends DialogPreference {
    private String dialogeMessage;
    private Context context;

    public PreferenceDialogOpenSourceLicenses(Context context, AttributeSet attrs) {
        super(context, attrs);
        this.context = context;
        setPersistent(false);
        setDialogLayoutResource(R.layout.preference_dialog_license);
        dialogeMessage = getActionBarSherlockLicense();
    }

    @Override
    public void onBindDialogView(View view){
        TextView textView = (TextView)view.findViewById(R.id.info_textview);
        textView.setText(dialogeMessage);
        super.onBindDialogView(view);
    }

    private String getActionBarSherlockLicense() {
         try {
                InputStream is = context.getAssets().open("licence_apache_v2.txt");
                int size = is.available();
                byte[] buffer = new byte[size];
                is.read(buffer);
                is.close();
                String text = new String(buffer);

                return text;
            } catch (IOException e) {
                return context.getString(R.string.error_could_not_get_license);
            }
    }
}
4

1 に答える 1

0

value フォルダーにある styles.xml を見てください。アプリのテーマの親に何か他のものを入れてください...それは「暗い」テーマの問題を修正するはずです;)例:.Lightテーマ

その後、value-v11 フォルダーと value-v14 フォルダーの styles.xml を holo に変更できます。これにより、API レベルでサポートされている場合に Holo テーマが考慮されます。

于 2013-08-02T20:01:25.917 に答える