グラフィカルエディタの[他のレイアウトを含める]を使用して、アクティビティのメインレイアウトにいくつかの小さな相対レイアウトを追加しました。ただし、何らかの理由でエミュレータにアクティビティを読み込もうとすると失敗します。LogCatには、エラーが発生したときとまったく同じように見える一般的なもの以外の警告はありません。このアクティビティの.Javaファイルでは、これらの含まれているレイアウト内のビューを問題なく参照できました。
これは、レイアウトを含むアクティビティの.xmlファイルの要素です。
<include
android:id="@+id/include1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/lblParklandAssistDesc"
android:layout_below="@+id/lblParklandAssistDesc"
layout="@layout/parklandweight" />
<include
android:id="@+id/include2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/include1"
android:layout_below="@+id/include1"
layout="@layout/parklandbsa" />
そして、これらは含まれているレイアウトです
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<Button
android:id="@+id/btnWeightUp"
style="?android:attr/buttonStyleSmall"
android:layout_width="55dp"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:text="@string/Up" />
<Button
android:id="@+id/brnWeightDown"
style="?android:attr/buttonStyleSmall"
android:layout_width="55dp"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_below="@+id/btnWeightUp"
android:text="@string/Down" />
<TextView
android:id="@+id/lblParklandWeightTitle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_toRightOf="@+id/btnWeightUp"
android:text="@string/lblWeight"
android:textAppearance="?android:attr/textAppearanceMedium" />
<EditText
android:id="@+id/txtWeight"
android:layout_width="55dp"
android:layout_height="wrap_content"
android:layout_below="@+id/lblParklandWeightTitle"
android:layout_toRightOf="@+id/btnWeightUp"
android:ems="10"
android:inputType="number"
android:text="100" >
<requestFocus />
</EditText>
<RadioGroup
android:id="@+id/radioGroup1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_toRightOf="@+id/lblParklandWeightTitle" >
<RadioButton
android:id="@+id/radio0"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:checked="true"
android:text="@string/lb" />
<RadioButton
android:id="@+id/radio1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/kg" />
</RadioGroup>
</RelativeLayout>
次に、もう1つ。
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<Button
android:id="@+id/btnBSADown"
style="?android:attr/buttonStyleSmall"
android:layout_width="55dp"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/btnBSAUp"
android:layout_below="@+id/btnBSAUp"
android:text="@string/Down" />
<TextView
android:id="@+id/lblParklandBSAtitle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:layout_marginLeft="58dp"
android:text="@string/lblParklandBSAtitle"
android:textAppearance="?android:attr/textAppearanceLarge" />
<Button
android:id="@+id/btnBSAUp"
style="?android:attr/buttonStyleSmall"
android:layout_width="55dp"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:text="@string/Up" />
<EditText
android:id="@+id/txtBSA"
android:layout_width="55dp"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/lblParklandBSAtitle"
android:layout_below="@+id/lblParklandBSAtitle"
android:ems="10"
android:inputType="number"
android:text="3" />
</RelativeLayout>
何が起こっているのか、率直に言ってどこを見ればいいのか、私には最も曖昧な考えがありません。私はほぼ2週間、AndroidでEclipseとJavaを使用して作業し、1つのアプリを作成し、すべてを使って幸運と簡単な学習を行ってきました。これは私を困惑させました。どんな助けでも大歓迎です!
新しい追加(xmlレイアウト自体は問題ではないように思われるため、.Javaコンテンツを追加しました):
アクティビティのクラスの先頭で、次のような他のレイアウトを処理する変数を宣言します。
View parklandWeight;
View parklandBSA;
次に、オブジェクトをオブジェクトに割り当てると、次のようになります。
parklandWeight = (View) findViewById(R.layout.parklandweight);
parklandBSA = (View) findViewById(R.layout.parklandbsa);
LogCatのこのactivity.javaに起因すると思われる唯一のエラーは、この2番目の割り当ての直後に発生します。これらのレイアウトの1つにあるボタンを参照する別の割り当て:
btnWeightUp = (Button) parklandWeight.findViewById(R.id.btnWeightUp);
これが私の問題の原因でしょうか?StackOverflowで少なくとも5つまたは6つの異なるスレッドを読んだことがあります。ここでは、これを行うことをお勧めします。前もって感謝します。