如何使用android从listview中的文本框onclick复选框中获取文本

时间:2017-04-14 09:24:46

标签: android listview checkbox

我正在制作复选框示例。我在ListView中使用了复选框和textview(textview值是我从数据库获得的),当我点击复选框然后我得到textview的文本但它只返回文本ID而不是值。此外,我想在textview中获取文本或在我单击复选框前面的特定行的唯一ID,并且它为所有textview获取相同的id。请帮我从textview获取唯一的ID或文本。

单击复选框事件的代码

  public void onCheckboxClicked(View view) {

    // Is the view now checked?
    boolean checked = ((CheckBox) view).isChecked();

    switch(view.getId()) {
        case R.id.checkbox_me:
            if (checked) {
                //Toast.makeText(getApplicationContext(), "'checkbox me..", Toast.LENGTH_LONG).show();
                username = (TextView)findViewById(R.id.inactivelistview);

                Username =username.getText().toString();
                System.out.println("prinnt username_=== "+username);

                AlertDialog.Builder alertbox = new AlertDialog.Builder(this);
                alertbox.setMessage("Do you want activate?");

                alertbox.setPositiveButton("Yes", new DialogInterface.OnClickListener() {
                      public void onClick(DialogInterface arg0, int arg1) {
                        Toast.makeText(getApplicationContext(), "'Yes' button clicked", Toast.LENGTH_SHORT).show();
                    }

                });

                alertbox.setNegativeButton("No", new DialogInterface.OnClickListener() {

                    public void onClick(DialogInterface arg0, int arg1) {
                        Toast.makeText(getApplicationContext(), "'No' button clicked", Toast.LENGTH_SHORT).show();
                    }
                });
               alertbox.show();
            } else
                break;
    }
}

listadapter xml代码

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

<TextView
    android:id="@+id/inactivelistview"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:textColor="#429ed7"
    android:textSize="18sp"
    />

<CheckBox android:id="@+id/checkbox_me"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:onClick="onCheckboxClicked"/>

当我单击复选框时它会检查,如果检查然后在用户名字符串中它返回所有复选框点击事件的textview的id,但我想要复选框中的文本值。 我尝试了很多方法,但没有工作,如果你有任何想法,请帮助我。

1 个答案:

答案 0 :(得分:1)

我认为在这一点上

System.out.println("prinnt username_=== "+username);

你必须输入“用户名”而不是“用户名”:

System.out.println("prinnt username_=== "+Username);