0
java.lang.RuntimeException: Unable to start activity `ComponentInfo{com.example.demo/com.example.demo.Demo}: android.view.InflateException: Binary XML file line #7: Error inflating class com.example.component.MainActivity`
public class MainActivity extends FrameLayout {    
    public MainActivity(Context context) {
        super(context);
        // TODO Auto-generated constructor stub
    }
}

activity_main.xml

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity" >

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        android:layout_centerVertical="true"
        android:text="@string/hello_world" />

</RelativeLayout>

デモ.java

public class Demo extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_demo);
    }


}

activity_demo.xml

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
 >

  <com.example.component.MainActivity
    android:id="@+id/comp"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
      />
</FrameLayout>
4

3 に答える 3

0

レイアウトにアクティビティを配置することはできません。ビューまたはビューグループのみ。

于 2013-01-19T08:46:12.267 に答える
0

インフレータは、ビュークラスのインスタンスを作成するときに、2つの引数のコンストラクタを使用します。あなたは提供しなければなりません

public MainActivity(Context context, AttributeSet attrs) {
    super(context, attrs);
    // TODO Auto-generated constructor stub
}
于 2013-01-19T08:46:50.390 に答える
0

Demo はアクティビティであるため、パッケージ名 com.example.demo.Demo を使用して Android manifest.xml ファイルで定義します。また、frameLayout 内に framelayout を追加する理由は、カスタム フレームレイアウトを 1 つだけ使用することです。xml を次のように定義します。

<com.example.component.MainActivity
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/comp"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
 />

//うまくいくことを願っています

于 2014-12-18T10:08:16.377 に答える