78

私のアプリケーションは、プログラムで小さなものを作成する必要がありますProgressBarProgressBarスタイルを設定する方法がありません (小さな が必要です ProgressBar)。コンストラクターは を受け取ることができますがAttributeSet、これはインターフェイスであり、一連の関数を実装する必要があります。ProgressBarを小さなスタイルに設定する方法はありますか? (XML を使用して を作成することはできません ProgressBar。)

4

3 に答える 3

177

ほとんどの場合、AttributeSet手動で提供する場合、Android のいずれかを使用する必要があります。幸いなことに、彼らは小さなプログレス バーを表す属性セットを公開しました。次のコードを使用します。

progressBar = new ProgressBar(activity, null, android.R.attr.progressBarStyleSmall);
于 2010-09-22T00:55:20.593 に答える
12

必要なすべての属性を含む目的のプログレスバーを使用して、res/layoutディレクトリにレイアウトxmlファイルを作成します。

<?xml version="1.0" encoding="utf-8"?>
<ProgressBar
  xmlns:android="http://schemas.android.com/apk/res/android"
  android:layout_width="wrap_content"
  android:layout_height="wrap_content" ... />

次に、Activityクラスで、そのレイアウトからProgressBarオブジェクトを作成できます。

LayoutInflater inflater = getLayoutInflater();
    ProgressBar bar = (ProgressBar ) inflater.inflate(R.layout.small_progress_bar, null);

ここで、R.layout.small_progress_barはレイアウトxmlファイルにリンクしています。

それでもxmlファイルを使用できませんか?

于 2010-08-23T15:48:26.793 に答える