Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/402.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 在另一个活动中将数据从MySQL传递到字幕文本视图_Java_Android_Json - Fatal编程技术网

Java 在另一个活动中将数据从MySQL传递到字幕文本视图

Java 在另一个活动中将数据从MySQL传递到字幕文本视图,java,android,json,Java,Android,Json,我将数据从MySQL传递到活动一中的字幕文本,它成功地工作了,但我需要通过意图将这些文本发送到另一个活动,但对我来说不是警告,请帮助 活动一: @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_dollars); item_k001 = findViewById

我将数据从MySQL传递到活动一中的字幕文本,它成功地工作了,但我需要通过意图将这些文本发送到另一个活动,但对我来说不是警告,请帮助

活动一:

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_dollars);
    item_k001 = findViewById(R.id.item_k101);
    item_k002 = findViewById(R.id.item_k102);
    requestQueue = Volley.newRequestQueue(this);
    JsonObjectRequest jsonObjectRequest = new JsonObjectRequest(Request.Method.GET, url, null,
            new Response.Listener<JSONObject>() {
                @Override
                public void onResponse(JSONObject response) {
                    final Globalv globalv = (Globalv) getApplicationContext();
                    try {
                        JSONArray jsonArray = response.getJSONArray("allegg");
                        String msg = "";
                        for (int i = 0; i < response.length(); i++) {
                            JSONObject respons = jsonArray.getJSONObject(i);
                            final String myItem_k001 = respons.getString("item_k1");
                            final String myItem_k002 = respons.getString("item_k2");
                            DollarsActivity.this.runOnUiThread(new Runnable() {
                                public void run() {
                                    item_k001.setText(myItem_k001);
                                    item_k002.setText(myItem_k002);
                                }
                            });
                        }
                        JSONObject respons2 = jsonArray.getJSONObject(0);
                        String id = respons2.getString("id");
                        globalv.setTotal_threads(Integer.parseInt(String.valueOf(id)));
                    } catch (JSONException e) {
                        e.printStackTrace();
                    }
                }

            }, new Response.ErrorListener() {
        @Override
        public void onErrorResponse(VolleyError error) {
            Log.e("VOLLEY", "ERROR");
        }
    }
    );
请尝试以下代码:

活动1

活动2


如果您想在收到文本后开始活动2,可以使用intent, 但如果activity2晚些时候开放,而且现在正在开放, 您可以轻松使用以下界面:

在sampleInterface中:

public interface sampleInterface{
    void setText(String text);
}
在活动1中添加:

sampleInterface callBack;
在活动1中,将此内容放在您收到文本的那一行:

callBack.setText("your Text"); 
在活动2中:

public class Activity2 extends AppCompatActivity implements  ,sampleInterface{

TextView textView;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_layout_2);
        textView= findViewById(R.id.textView);

}

    @Override
    public void setText(String yourText) {
        textView.setText(yourText);
    }

}
无论何时调用
callback.setText(“此处的文本”)这将触发
@覆盖
方法,并返回您的文本

希望这能有所帮助

callBack.setText("your Text"); 
public class Activity2 extends AppCompatActivity implements  ,sampleInterface{

TextView textView;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_layout_2);
        textView= findViewById(R.id.textView);

}

    @Override
    public void setText(String yourText) {
        textView.setText(yourText);
    }

}