请参见BarChartPosNegActivity.data_str=jsonArray.toString();
我通过PHP文件和volley从Web DB获取数据
然后将数据存储到BarChartPosNegActivity.data_str
静态变量
运行代码时,首先,BarChartPosNegActivity.data_str
由于初始化了变量static String data_str="aa";
会打印“ aa”
然后按“后退”按钮并重新输入当前活动(使用MPAndroidChart的barchart屏幕)后,BarChartPosNegActivity.data_str
打印表的数据
如何将表的数据直接存储到BarChartPosNegActivity.data_str
中而不需要“返回后屏幕并重新进入屏幕”?
public class BarChartPosNegActivity extends AppCompatActivity
{
// ================================================================================
...
// Create static variable
static String data_str="aa";
// ================================================================================
@Override
protected void onCreate(Bundle savedInstanceState)
{
// ================================================================================
super.onCreate(savedInstanceState);
// ================================================================================
setContentView(R.layout.activity_bar_chart_pos_neg);
// ================================================================================
...
get_refDB_up_down_numerical_table();
System.out.println(BarChartPosNegActivity.data_str);
// ================================================================================
// Create BarDataSet1 object
BarDataSet barDataSet1=new BarDataSet(dataValues1(),"DataSet 1");
...
}
// ================================================================================
void get_refDB_up_down_numerical_table()
{
Response.Listener<String> responseListener = new Response.Listener<String>()
{
@Override
public void onResponse(String response)
{
try
{
JSONArray jsonArray=new JSONArray(response);
BarChartPosNegActivity.data_str=jsonArray.toString();
}
catch (JSONException e)
{
e.printStackTrace();
}
}
};
RefDBNumericRequest loginRequest = new RefDBNumericRequest(responseListener);
RequestQueue queue = Volley.newRequestQueue(BarChartPosNegActivity.this);
queue.add(loginRequest);
}
}
答案 0 :(得分:0)
移动此代码:
System.out.println(BarChartPosNegActivity.data_str);
// ================================================================================
// Create BarDataSet1 object
BarDataSet barDataSet1=new BarDataSet(dataValues1(),"DataSet 1");
...
进入onResponse处理程序。当您从HTTP调用获取响应时,将调用此函数。