【问题标题】:Error when clicking Group header in listview在列表视图中单击组标题时出错
【发布时间】:2018-08-03 08:28:37
【问题描述】:

首先抱歉我的手指太大了。

我有一个 header.xmldetail.xml 根据数据填充我的列表视图。现在我注意到Listivew 点击事件。如果我单击ListView 中的组标题,则会发生错误。我该如何解决?

这是我的代码。

listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
    TextView pos_remarks = (view.findViewById(R.id.list_remarks));
   final String l_remarks = pos_remarks.getText().toString();
});

抱歉忘记了错误

Process: com.main, PID: 5539
    java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.CharSequence android.widget.TextView.getText()' on a null object reference
        at com.main.fragment.fragment_plan$1.onItemClick(fragment_plan.java:71)
        at android.widget.AdapterView.performItemClick(AdapterView.java:315)
        at android.widget.AbsListView.performItemClick(AbsListView.java:1209)
        at android.widget.AbsListView$PerformClick.run(AbsListView.java:3331)
        at android.widget.AbsListView.onTouchUp(AbsListView.java:4403)
        at android.widget.AbsListView.onTouchEvent(AbsListView.java:4103)
        at android.view.View.dispatchTouchEvent(View.java:10062)
        at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2776)
        at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2408)

Header.xml

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


    <LinearLayout
        android:id="@+id/line_date"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:background="#FFFFFF"
        android:orientation="horizontal"
        android:paddingBottom="8sp"
        android:paddingLeft="25sp"
        android:paddingRight="25sp"
        android:clickable="false"
        android:paddingTop="8sp">

        <TextView
            android:id="@+id/list_date"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:fontFamily="@font/tahoma"
            android:text="Date"
            android:textSize="15sp"
            android:clickable="false"
            android:textStyle="bold" />

    </LinearLayout>

</android.support.constraint.ConstraintLayout>

`details.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="vertical">

    <LinearLayout
        android:layout_width="0dip"
        android:layout_height="match_parent"
        android:layout_weight="4.5"
        android:orientation="vertical">

        <TextView
            android:id="@+id/list_remarks"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:ellipsize="end"
            android:fontFamily="@font/tahoma"
            android:paddingLeft="5sp"
            android:singleLine="true"
            android:text=""
            android:textSize="14sp" />
    </LinearLayout>
</LinearLayout>`

【问题讨论】:

  • 添加错误的stacktrace。
  • 您可以将您提到的错误中的堆栈跟踪添加到您的问题中吗?
  • 完成添加错误
  • 您的TextView 是否为空。
  • 其实没有。当我单击已添加到列表视图中的 header.xml 的布局时,总是会发生错误。我的意思是组头

标签: android listview


【解决方案1】:

试试这个

if(pos_remarks!=null){
    final String l_remarks = pos_remarks.getText().toString();
}

【讨论】:

  • 你的意思是我所有的观点都会被它包围
  • 您可以将 else 块用于其他视图
  • 您能解释一下为什么您的代码将有助于解决 OP 的问题吗?单独的代码块并不能提供所有信息
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-10-08
  • 2013-02-21
  • 2018-11-17
  • 1970-01-01
  • 2017-04-08
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多