Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/228.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 我可以在ViewFlipper内设置contentView吗?_Java_Android_Xml_Android Linearlayout_Viewflipper - Fatal编程技术网

Java 我可以在ViewFlipper内设置contentView吗?

Java 我可以在ViewFlipper内设置contentView吗?,java,android,xml,android-linearlayout,viewflipper,Java,Android,Xml,Android Linearlayout,Viewflipper,我有一个包含布局的ViewFlipper 有没有一种方法可以连接一个类来分别管理每个布局 有点像setContentView(R.layout.main)但我不确定如何在代码中引用3种不同的布局 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertic

我有一个包含布局的ViewFlipper

有没有一种方法可以连接一个类来分别管理每个布局

有点像
setContentView(R.layout.main)但我不确定如何在代码中引用3种不同的布局

<?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" >
          <ListView android:layout_width="wrap_content" android:id="@+id/ListView" android:layout_height="220dp"></ListView>
          <ViewFlipper android:id="@+id/ViewFlipper" android:layout_width="fill_parent" android:layout_height="fill_parent">
                <LinearLayout android:id="@+id/LinearLayoutST" android:layout_width="fill_parent" android:layout_height="fill_parent">
                      <ImageView android:id="@+id/ImageView01" android:layout_width="wrap_content" android:layout_height="wrap_content" android:background="@drawable/icon"></ImageView>
                </LinearLayout>
                <LinearLayout android:id="@+id/LinearLayoutChart" android:layout_height="fill_parent" android:layout_width="fill_parent">
                      <TextView android:id="@+id/TextView01" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="View 2"></TextView>
                </LinearLayout>
                <LinearLayout android:id="@+id/LinearLayoutDetails" android:layout_height="fill_parent" android:layout_width="fill_parent">
                      <TextView android:id="@+id/TextView02" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="View 3"></TextView>
                </LinearLayout>
          </ViewFlipper>
    </LinearLayout>

您可以通过两种方式执行此操作:

  • 将相应的类实例附着到要操纵的视图或布局。如果您只想使用常规调用、设置OnClickListeners等,这就足够了:

    LinearLayout布局图=(LinearLayout)findViewById(R.id.LinearLayoutChart)

  • 如果需要重写默认类行为(即子类),请创建扩展类:

    公共类LinearLayoutChart扩展了LinearLayout{ …}

  • 确保实现所有父构造函数(即使只是传递到调用super…),尤其是那些接受属性的构造函数

    在扩展类中实现自定义代码

    然后,编辑布局xml并用特殊类的完全限定类名(包括其包名)替换LinearLayout标记和end标记

    <com.mycompany.mypackage.LinearLayoutChart>
    <!-- layout definition as before -->
    </com.mycompany.mypackage.LinearLayoutChart>
    
    
    
    这将使布局充气器实例化您的类而不是库存类,因此您可以覆盖受保护的方法等