2

私の主な活動では、メインの ScrollView 内にある LinearLayout にアクセスしようとしています。私の ScrollView は次のように実装されています。

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

    <LinearLayout
        android:id="@+id/graph" 
        android:orientation="vertical"
        android:layout_width="fill_parent"
        android:layout_height="250dip"
         />



</ScrollView>

メイン アクティビティでは、scrollView を膨らませてから、次のように線形レイアウトにアクセスしようとします。

LayoutInflater inflater;
    inflater = (LayoutInflater)  this.getSystemService(Context.LAYOUT_INFLATER_SERVICE);              

    ScrollView mainLayout = (ScrollView) inflater.inflate(R.layout.scrollview,
                    null);
    LinearLayout layout = (LinearLayout) findViewById(R.id.graph);

ここで findViewById が null を返すのはなぜですか? 最初は、膨らませる前に見つけようとしていると思っていましたが、膨らませるのを待つためにwhileループを試してみましたが、これも役に立ちません。

4

2 に答える 2

0

最初に inflater.inflate() で間違ったレイアウトを指定しているかどうかを再確認できます。

于 2014-06-02T04:03:45.933 に答える