如何从没有任何自定义适配器的ListView中的TextView获取值?

时间:2017-12-24 06:51:07

标签: android listview nullpointerexception textview rootview

我有一个带有TextView的ListView(有一个整数作为字符串)和一个Seekbar。 我需要提取整数值并将其设置为Seekbar。

不幸的是,当我这样做时,我得到一个NullPointer异常,因为PlaceholderFragment的onCreateView无法识别填充ListView项的内容。

String progressValue = percentileTextView.getText().toString();
bar.setProgress(Integer.parseInt(progressValue));

我有这个活动的活动布局,然后是包含listview的片段布局,然后我有一个content.xml,其中存在实际的TextView。我的问题是如何引用这个TextView?我这样做是正确的,即活动布局包含带有工具栏等的ConstraintLayout,然后片段布局包含ListView,我使用单独的content.xml并通过SimpleAdapter将其应用于ListView。

 newAdapter = new SimpleAdapter(getContext(), newList,
                                R.layout.content, new String[] {
                                    "name",
                                    "percent"
                                },
                                new int[] {
                                    R.id.name1, 
                                    R.id.percentile1
                                });

我希望你理解我的问题。

当我执行以下操作时,它可以正常工作(即Android Studio了解它是TextView) - 但在构建时会抛出空指针异常。

TextView percentileTextView = (TextView) rootView.findViewById(R.id.percentile1);
pskink的

更新1

新名单内容:

[{TA=Item1, IA=46}, {TA=Item2, IA=98}, {TA=Item3, IA=70}, {TA=Item4, IA=54}, {TA=Item5, IA=99}, {TA=Item6, IA=98}]

行项目布局(content.xml):

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:orientation="vertical"
    android:padding="@dimen/activity_horizontal_margin">
    <TextView
        android:id="@+id/name1"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:paddingBottom="2dip"
        android:textStyle="bold"
        android:textColor="@color/colorAccent" />
    <RelativeLayout
        android:layout_height="wrap_content"
        android:layout_width="fill_parent"
        android:padding="5dp">
    <TextView
        android:id="@+id/greater_than"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textColor="#5d5d5d"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:text="@string/greater_than" />
        <TextView
            android:id="@+id/percentile1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:textColor="#5d5d5d"
            android:layout_toRightOf="@id/greater_than"
            android:layout_toEndOf="@id/greater_than"
            android:textStyle="bold" />
    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textColor="#5d5d5d"
        android:layout_toRightOf="@id/percentile1"
        android:layout_toEndOf="@id/percentile1"
        android:text="@string/percentile_text"/>


    </RelativeLayout>
    <SeekBar
        android:id="@+id/seekBar2"
        android:paddingTop="12dip"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        />
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:gravity="end|bottom"
        android:paddingTop="12dip"
        android:orientation="horizontal">
        <ImageView
            android:contentDescription="info"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:src="@mipmap/someimg" />
    </LinearLayout>

</LinearLayout>

0 个答案:

没有答案