QA@IT

AndroidのActivityのonCreateでプログレスバーを取得できません。

8871 PV

Android開発の質問です。ProgressBarを表示しようと試みていますが、NullPointerExceptionが発生します。

画面を表示するためのXMLはこんな感じです。

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

    <ProgressBar
        style="?android:attr/progressBarStyleSmall"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/progressBar"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true" />

</RelativeLayout>

画面表示のActivityは以下の通りです。

public class Hogehoge extends Activity
{

    @Override
    protected void onCreate(Bundle savedInstanceState)
    {
            //ローディングのプログレスバーを表示
            ProgressBar pbrLoading = null;
            pbrLoading = (ProgressBar)findViewById(R.id.progressBar);
            //ここでNullPointerExceptionが発生
            pbrLoading.setVisibility(View.VISIBLE);
    }
}

どうも、findViewByIdでインスタンスが取得できていないようです。
環境はAndroid Studioを使っており、単純なソースの記述ミスであれば、警告などが表示されると思うのですが、それすらありません。
どなたか、プログレスバーのインスタンスを取得する方法をおしえてもらえないでしょうか。

回答

下記をOnCreateの最初に入れてもだめですか?

super.onCreate(savedInstanceState);
setContentView(R.layout.XMLの名前);

編集 履歴 (0)
  • 出来ました!そっか、setContextViewでレイアウトと結びつけるんですね。初歩的な事を忘れていました。
    ありがとうございました。
    -
ウォッチ

この質問への回答やコメントをメールでお知らせします。