Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/377.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 如何在Android中填充可扩展的listview_Java_Android_Adapter_Expandablelistview_Classnotfoundexception - Fatal编程技术网

Java 如何在Android中填充可扩展的listview

Java 如何在Android中填充可扩展的listview,java,android,adapter,expandablelistview,classnotfoundexception,Java,Android,Adapter,Expandablelistview,Classnotfoundexception,我第一次使用可扩展的ListView,我在这里找到了一个示例: 我检查了它,根据我的需要进行了调整,但应用适配器时应用程序会崩溃。我复制粘贴了整个示例,甚至使用了给定的字符串数组,认为我可能在这方面做错了什么 不过,错误是一样的 下面是my activity+自定义适配器类的代码。出于明显的原因,我将与其他元素无关的内容(如onClickListeners)去掉 /////////////////////////////////////////////// public String[

我第一次使用可扩展的ListView,我在这里找到了一个示例:

我检查了它,根据我的需要进行了调整,但应用适配器时应用程序会崩溃。我复制粘贴了整个示例,甚至使用了给定的字符串数组,认为我可能在这方面做错了什么

不过,错误是一样的

下面是my activity+自定义适配器类的代码。出于明显的原因,我将与其他元素无关的内容(如onClickListeners)去掉

///////////////////////////////////////////////
    public String[] parentArray = {
           "India",
           "Australia",
           "England",
           "South Africa"
         };
    public String[][] childArray = {
               {
                   "Sachin Tendulkar",
                   "Raina",
                   "Dhoni",
                   "Yuvi"
                    },
                    {
                   "Ponting",
                   "Adam Gilchrist",
                   "Michael Clarke"
                    },
                    {
                   "Andrew Strauss",
                   "kevin Peterson",
                   "Nasser Hussain"
                    },
                    {
                   "Graeme Smith",
                   "AB de villiers",
                   "Jacques Kallis"
                    }
                     };
    ///////////////////////////////////////////////

    public void onCreate(Bundle savedInstanceState) {   
        requestWindowFeature(Window.FEATURE_NO_TITLE);
        super.onCreate(savedInstanceState);
        setContentView(R.layout.viewschedule);

        getViews();
        setSpinnerAdapter();
        listview.setAdapter(new ExpAdapter(this));

    }

    public class ExpAdapter extends BaseExpandableListAdapter {

      private Context myContext;
      public ExpAdapter(Context context) {
       myContext = context;
      }
      public Object getChild(int groupPosition, int childPosition) {
       return null;
      }

      public long getChildId(int groupPosition, int childPosition) {
       return 0;
      }

      public View getChildView(int groupPosition, int childPosition,
        boolean isLastChild, View convertView, ViewGroup parent) {

       if (convertView == null) {
        LayoutInflater inflater =  (LayoutInflater) myContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
        convertView = inflater.inflate(R.layout.childrow, null);
       }

       TextView tvPlayerName = (TextView) convertView.findViewById(R.id.tvPlayerName);
       tvPlayerName.setText(childArray[groupPosition][childPosition]);

       return convertView;
      }

      public int getChildrenCount(int groupPosition) {
       return childArray[groupPosition].length;
      }

      public Object getGroup(int groupPosition) {
       return null;
      }

      public int getGroupCount() {
       return parentArray.length;
      }

      public long getGroupId(int groupPosition) {
       return 0;
      }

      public View getGroupView(int groupPosition, boolean isExpanded,
        View convertView, ViewGroup parent) {

       if (convertView == null) {
        LayoutInflater inflater =  (LayoutInflater) myContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
        convertView = inflater.inflate(R.layout.parentrow, null);
       }

       TextView tvGroupName = (TextView) convertView.findViewById(R.id.tvGroupName);
       tvGroupName.setText(parentArray[groupPosition]);

       return convertView;
      }

      public boolean hasStableIds() {
       return false;
      }

      public boolean isChildSelectable(int groupPosition, int childPosition) {
       return true;
      }
     }
}
下面是我的日志,上面写着“找不到类”

My getViews()方法:

整个ViewSchedule.xml:

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

    <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent" >

        <RelativeLayout
            android:id="@+id/relativeLayout1"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_alignParentTop="true"
            android:layout_centerHorizontal="true"
            android:layout_marginTop="30dp"
            android:background="@color/aceDarkBlue" >

            <ImageView
                android:id="@+id/imageView1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentLeft="true"
                android:layout_alignParentTop="true"
                android:src="@drawable/orarbuton" />

            <TextView
                android:id="@+id/textView1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_centerVertical="true"
                android:layout_marginLeft="15dp"
                android:layout_toRightOf="@+id/imageView1"
                android:text="@string/aceOrar"
                android:textAppearance="?android:attr/textAppearanceLarge" />

            <ImageView
                android:id="@+id/imageView2"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentRight="true"
                android:layout_centerVertical="true"
                android:src="@drawable/homebuton" />
        </RelativeLayout>


        <Button
            android:id="@+id/button2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentBottom="true"
            android:layout_alignParentRight="true"
            android:text="@string/editDefault" />

        <RelativeLayout
            android:id="@+id/relativeLayout2"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_below="@+id/relativeLayout1"
            android:layout_marginTop="14dp" >

            <LinearLayout
                android:layout_width="0px"
                android:layout_height="0px"
                android:focusable="true"
                android:focusableInTouchMode="true" >
            </LinearLayout>

            <Spinner
                android:id="@+id/spinner1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentLeft="true"
                android:layout_alignParentTop="true" />


            <EditText
                android:id="@+id/editText1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentRight="true"
                android:layout_alignParentTop="true"
                android:layout_toRightOf="@+id/spinner1"
                android:ems="10" />

        </RelativeLayout>



        <ExpandableListView
            android:id="@+id/expandableListView1"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_alignParentBottom="true"
            android:layout_alignParentLeft="true"
            android:layout_below="@+id/relativeLayout2" >

        </ExpandableListView>

    </RelativeLayout>

</LinearLayout>

对于我目前所缺少的任何帮助,我都将不胜感激……

我解决了这个问题,多亏了谁有正确的想法让我清理了这个项目

我有两个单独的布局文件夹,一个横向和纵向文件夹。无论出于何种原因,parentrow.xml中纵向文件夹中的TextView路径被破坏

我所要做的就是在GUI编辑器中单击“ChangetoTextView”,它工作得很好


值得一提的是,Eclipse没有发出此错误的信号,我只是在开始手动查看xml文件时才意识到此错误。

您可以编辑您的问题并发布viewschedule.xml布局文件,以及
getViews()
方法的内容吗?启动应用程序后是否会强制关闭?如果您可以在活动顶部发布导入语句,也可能会有所帮助。最后我想说的是,在包资源管理器中右键单击您的项目,然后选择
cleanproject
,有时这会修复一些奇怪的错误。出于好奇,为什么在relativeLayout2中有一个0高度/宽度的线性布局?无论我在哪个阶段设置listview适配器,app force都会关闭。我将编辑并添加代码的其余部分,还将包括childrow.xml和parentrow.xml,可能我缺少一些东西。经过这么长时间的工作,我对它的理解变得有点模糊,而且布局在那里,所以它分散了编辑文本的注意力。这是一个有点黑客的方法,但它的工作。简言之,它可以防止键盘在输入活动或更改屏幕方向时弹出。我刚刚收到它。。。无论出于何种原因,childrow.xml中的TextView的生成路径“肖像”文件夹已损坏,导致其崩溃。。。非常感谢你的意见。让别人从外面看真的很有帮助
private void getViews(){
        font = Typeface.createFromAsset(getAssets(), "arialnb.ttf");

        groupInput = (EditText) findViewById(R.id.editText1);
        groupInput.setTextColor(getResources().getColor(R.color.lightGrey));
        groupInput.setText("Grupa: (ex: 10201b)");

        titleText = (TextView) findViewById(R.id.textView1);
        titleText.setTypeface(font);

        editDefault = (Button) findViewById(R.id.button2);

        homeImage = (ImageView) findViewById(R.id.imageView2);

        daySpinner = (Spinner) findViewById(R.id.spinner1);

        listview = (ExpandableListView) findViewById(R.id.expandableListView1);
        listview.setVerticalFadingEdgeEnabled(false);
    }
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@color/aceLightBlue"
    android:orientation="vertical" >

    <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent" >

        <RelativeLayout
            android:id="@+id/relativeLayout1"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_alignParentTop="true"
            android:layout_centerHorizontal="true"
            android:layout_marginTop="30dp"
            android:background="@color/aceDarkBlue" >

            <ImageView
                android:id="@+id/imageView1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentLeft="true"
                android:layout_alignParentTop="true"
                android:src="@drawable/orarbuton" />

            <TextView
                android:id="@+id/textView1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_centerVertical="true"
                android:layout_marginLeft="15dp"
                android:layout_toRightOf="@+id/imageView1"
                android:text="@string/aceOrar"
                android:textAppearance="?android:attr/textAppearanceLarge" />

            <ImageView
                android:id="@+id/imageView2"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentRight="true"
                android:layout_centerVertical="true"
                android:src="@drawable/homebuton" />
        </RelativeLayout>


        <Button
            android:id="@+id/button2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentBottom="true"
            android:layout_alignParentRight="true"
            android:text="@string/editDefault" />

        <RelativeLayout
            android:id="@+id/relativeLayout2"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_below="@+id/relativeLayout1"
            android:layout_marginTop="14dp" >

            <LinearLayout
                android:layout_width="0px"
                android:layout_height="0px"
                android:focusable="true"
                android:focusableInTouchMode="true" >
            </LinearLayout>

            <Spinner
                android:id="@+id/spinner1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentLeft="true"
                android:layout_alignParentTop="true" />


            <EditText
                android:id="@+id/editText1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentRight="true"
                android:layout_alignParentTop="true"
                android:layout_toRightOf="@+id/spinner1"
                android:ems="10" />

        </RelativeLayout>



        <ExpandableListView
            android:id="@+id/expandableListView1"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_alignParentBottom="true"
            android:layout_alignParentLeft="true"
            android:layout_below="@+id/relativeLayout2" >

        </ExpandableListView>

    </RelativeLayout>

</LinearLayout>