Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/331.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 将字符串数据从活动发送到片段_Java_Android_Sqlite_Fragment_Android Sqlite - Fatal编程技术网

Java 将字符串数据从活动发送到片段

Java 将字符串数据从活动发送到片段,java,android,sqlite,fragment,android-sqlite,Java,Android,Sqlite,Fragment,Android Sqlite,我想将一个字符串从Activity(MainActivity.java)发送到片段(Tozihat.java)并设置为文本视图,但它给出了一个错误。 我检查了其他主题,但找不到问题的解决方案 来自数据库方法的代码我写入id+1,因为listView中的第一个项目位置为0,但第一个id为1: public String Tozihat(int id) { int id2 = id + 1; String query = "SELECT Tozihat FROM tbl_mi

我想将一个字符串从Activity(MainActivity.java)发送到片段(Tozihat.java)并设置为文本视图,但它给出了一个错误。 我检查了其他主题,但找不到问题的解决方案

来自数据库方法的代码我写入id+1,因为listView中的第一个项目位置为0,但第一个id为1:

    public String Tozihat(int id) {
    int id2 = id + 1;
    String query = "SELECT Tozihat FROM tbl_mive WHERE ID ="+id2;
    SQLiteDatabase db = this.getReadableDatabase();
    Cursor cursor = db.rawQuery(query , null);
    String t;
    cursor.moveToFirst();
    t = cursor.getString(0);

    return t;
}
来自MainActivity.Java的代码

        listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
        @Override
        public void onItemClick(AdapterView<?> parent, View view, int position, long id) {


            Intent intent = new Intent(MainActivity.this , ClickActivity.class);

            String t = myDbHelper.Tozihat(position);
            Bundle bundle=new Bundle();
            Tozihat tozihat = new Tozihat();
            FragmentTransaction fragmentTransaction = getSupportFragmentManager().beginTransaction();
            fragmentTransaction.replace(R.id.textViewTozihat , tozihat, null);
            bundle.putString("Tozihat", t );
            tozihat.setArguments(bundle);
            fragmentTransaction.commit();

            startActivity(intent);

        }
    });

请帮帮我

在listview项目中添加以下代码单击活动中的listner:

 Tozihat gTozihat  = new Tozihat().newInstance("Data");
        getSupportFragmentManager().beginTransaction()
                .replace(R.id.textViewTozihat, gTozihat).commit();
在你的片段中:

 private static final String TYPE = "DATA_KEY";
public static  Tozihat newInstance(String type) {
         Tozihat fragment = new  Tozihat();
        Bundle args = new Bundle();
        args.putString(TYPE, type);

        fragment.setArguments(args);
        return fragment;
    }

你的主要活动代码是什么??为什么要同时调用
startActivity
和.code>commit??你能解释一下吗?你的问题是你在活动中加入了片段,同时又开始了新的活动。Tozihat片段尚未在MainActivity中处理。这里是逻辑例外我从未处理过片段我不知道。我删除了意图,但仍然被强制停止读取它是错误的…请检查编辑的代码谢谢,但它是强制停止!!!
 private static final String TYPE = "DATA_KEY";
public static  Tozihat newInstance(String type) {
         Tozihat fragment = new  Tozihat();
        Bundle args = new Bundle();
        args.putString(TYPE, type);

        fragment.setArguments(args);
        return fragment;
    }