1

以下のコードを実行すると、ログファイルに「null」が出力されます...問題は何ですか?

ProgressBar progressBar = (ProgressBar)findViewById(R.id.progressBar1);
if (progressBar == null) {
    Log.d("tag", "null");
}

xml呼び出しは次のとおりです。

<ProgressBar
    android:id="@+id/progressBar1"
    style="?android:attr/progressBarStyleHorizontal"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_x="37dp"
    android:layout_y="343dp" />
4

2 に答える 2

4

layoutを最初ProgressBarに膨らませておく必要があり、View.findViewById()代わりにを使用する必要がある場合がありますActivity.findViewById()。私は実際に今朝この問題を抱えていました。私の修正はここにあります:

    LayoutInflater infl = uI.getLayoutInflater();
    ViewGroup rootGroup = (ViewGroup) uI.findViewById(R.id.voltoast_root);
    View root = infl.inflate(R.layout.volumetoast, rootGroup);
    toast.setView(root);
    pB = (ProgressBar) root.findViewById(R.id.progress);

私はmyfindViewById()root代わりに を呼び出しており、1 つの要素であるa を含む膨張したビューを持っていActivityます。rootLinearLayoutProgressBar

于 2012-04-29T18:59:40.907 に答える
0

スタイルを次のように変更します。

style="@android:style/Widget.ProgressBar.Horizontal"
于 2012-04-28T23:19:27.330 に答える