HTCデバイスにも、エミュレーターライトグレーでテキストが黒のスピナーがあります。Motorola Defyでは、コントロールは濃い灰色で、テキストは白です。
現在のデバイスのデフォルトのテキストの色を取得するにはどうすればよいですか?
HTCデバイスにも、エミュレーターライトグレーでテキストが黒のスピナーがあります。Motorola Defyでは、コントロールは濃い灰色で、テキストは白です。
現在のデバイスのデフォルトのテキストの色を取得するにはどうすればよいですか?
Macarse の答えは正しい方向に進みますが、私は別の方法を使用します。
/platforms/android-X/data/res/values
私はxmlファイルを見て、自分に合った色background_dark
を見つけました。
最後に、次のコードを使用します。
public class MyAdapter extends ArrayAdapter<SpinnerItem> {
// ...
@Override
public View getDropDownView(int position, View convertView, ViewGroup parent) {
View v = super.getDropDownView(position, convertView, parent);
TextView tv=(TextView)v.findViewById(android.R.id.text1);
tv.setTextColor(Resources.getSystem().getColor(android.R.color.background_dark));
return v;
}
}
キャリー/製造業者によって行われたすべてのカスタマイズは内部にあります:
android:colors
android:styles
android:themes
を使用している場合は、オブジェクトを作成してgetTextColors()TextView
を呼び出すことで、デフォルトのテキストの色を確認できます。TextView
別の可能性は、スタイルが にどのように適用されているかを確認TextView
し、メソッドを使用しgetResource()
て探している正確な色を取得することです。