1

質問: Android XML ファイルの XML「ビットマップ」に「src」属性を動的に設定する方法はありますか?

次のように定義された「repeat_background.xml」という名前のカスタム XML ドローアブルがあります。

<?xml version="1.0" encoding="utf-8"?>
<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
    android:src="@drawable/background"
    android:tileMode="repeat" />

このドローアブルを使用して、アプリのすべてのページの背景として 1x1 jpg (background.jpg という名前) を「並べて表示」します。LinearLayout

 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
         android:orientation="vertical"
         android:layout_width="match_parent"
         android:layout_height="match_parent"
         android:background="@drawable/repeat_background">

ただし、実際の jpg (この場合は @drawable/background の「background.jpg」) をユーザーの好みに基づいて作成したいので、ユーザーが赤、青、オレンジなどを選択できるリストを作成します。 . ユーザーはアプリに表示される背景色をオーバーライドできるので、リソース バンドルで使用可能な各色に対応する 1x1 jpg を作成しますが、優先する jpg を背景として表示するにはどうすればよいですか?

すべてのフラグメントまたはアクティビティで手動でコードを呼び出す必要はありません。ユーザーの設定を尊重し、それに応じて反応するものが必要です。

BitmapDrawable クラスを拡張しようとしましたが、あまりうまくいきませんでした。これを達成する方法についての提案は大歓迎です。

4

1 に答える 1

0

を使用して、Java コードで実行できますsetBackgroundDrawable(new ColorDrawable(color))。xml では実行できません。

于 2015-07-09T00:32:36.040 に答える