-1

次のコードを使用して、アプリケーションのタイトル バー (から#F55B53まで) にグラデーションを設定したいと考えています。#FFFF00

GradientDrawable gd = new GradientDrawable(GradientDrawable.Orientation.TOP_BOTTOM, new int[] {0xF55B53,0xFFFF00});
View title = getWindow().findViewById(android.R.id.title);
View titleBar = (View) title.getParent();
titleBar.setBackgroundDrawable(gd);

しかし、日食は私に教えてください:

タイプ ビューのメソッド setBackgroundDrawable(Drawable) は非推奨です

どうすればいいですか?

4

2 に答える 2

2

ほとんどの場合、非推奨の警告が表示されますが、それは正しい方法で行われます。View クラスのドキュメントにアクセスすると、setBackgroundDrawable(Drawable background)メソッドに次のように記載されていることがわかります。

このメソッドは API レベル 16 で廃止されました。代わりに setBackground(Drawable) を使用してください

ターゲットにしている Android のバージョンによっては、非推奨のものを引き続き使用したい場合があります。

于 2013-02-24T12:15:51.170 に答える
0

titleBar.setBackgroundDrawable(gd);

コードを変更する

int sdk = android.os.Build.VERSION.SDK_INT;
if(sdk < android.os.Build.VERSION_CODES.JELLY_BEAN) {
    setBackgroundDrawable()
} else {
    setBackground();
}
于 2015-02-04T08:43:36.753 に答える