1

バックグラウンド リソースを複数のボタンに適用する方法を見つけようとしています。これらのリソースは SDCARD からのものです。リソースを適用する通常の方法は次のとおりです。

Button b = new Button(getContext());
b.setBackgroundResource(R.drawable.button_states);
//where button_states is an XML file

しかし、XML ファイルが SD カードからのものである場合、背景を適用する方法がわかりません。何か案は?

4

3 に答える 3

2

そのために以下のコードを使用してください。

Button b = new Button(getContext());
Bitmap bmp = BitmapFactory.decodeFile("/mnt/sdcard/test.png");
Drawable d = new BitmapDrawable(bmp);
b.setBackgroundDrawable(d);
于 2012-08-16T04:15:31.477 に答える
1
String rootPath =Environment.getExternalStorageDirectory().getAbsolutePath(); // Returns path to sdcard
rootPath+="/test.png"
Bitmap b = BitmapFactory.decodeFile(s);
mImageView.setImageBitmap(b);
于 2012-08-16T04:24:44.137 に答える
0

xmlファイルをsdcardに保存する代わりに、次のようなものを使用します

<selector>
<item>
    <shape>
        <gradient
            android:startColor="#343434"
            android:endColor="#171717"
            android:angle="270" />
        <stroke
            android:width="1dp"
            android:color="#171717" />
        <corners
            android:radius="4dp" />
        <padding
            android:left="10dp"
            android:top="10dp"
            android:right="10dp"
            android:bottom="10dp" />
    </shape>
</item>
</selector>

これを drawable フォルダー内の別の xml ファイルとして使用して、必要なボタンに適用してみてください。

style="@style/ButtonText

レイアウト xml ファイル内

于 2012-08-16T04:44:05.923 に答える