Android 如何动态创建图像的gridview
我正在开发一个应用程序,在其中我必须动态填充图像的gridview。我正在从服务器获取一个图像ID数组,我正在解码json数组并获取图像ID。现在我已经将所有图像存储在我的drawable文件夹中,我想显示我从json中获得的ID的图像,但我被困在这一点上,我不知道这是如何实现的。帮助 这是我的主要活动Android 如何动态创建图像的gridview,android,json,gridview,Android,Json,Gridview,我正在开发一个应用程序,在其中我必须动态填充图像的gridview。我正在从服务器获取一个图像ID数组,我正在解码json数组并获取图像ID。现在我已经将所有图像存储在我的drawable文件夹中,我想显示我从json中获得的ID的图像,但我被困在这一点上,我不知道这是如何实现的。帮助 这是我的主要活动 public class MainActivity extends Activity { GridView grid ; @Override protected void onCreate(B
public class MainActivity extends Activity {
GridView grid ;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
grid = (GridView)findViewById(R.id.grid_view);
grid.setAdapter(new Adapter(this));
Button play = (Button)findViewById(R.id.play);
play.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
try {
playgame();
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
});
protected void playgame() throws JSONException {
if(cardcount >=1 ){
BufferedReader reader=null;
data_to_send = "userId=" + userId ;
try
{
Log.e("inside try block", "get text");
// Defined URL where to send data
URL url = new URL("http://172.16.10.5/Ankur/andapp/request_Play.php");
// Send POST data request
URLConnection conn = url.openConnection();
conn.setDoOutput(true);
OutputStreamWriter wr = new OutputStreamWriter(conn.getOutputStream());
wr.write(data_to_send);
wr.flush();
// Get the server response
reader = new BufferedReader(new InputStreamReader(conn.getInputStream()));
StringBuilder sb = new StringBuilder();
String line = null;
// Read Server Response
while((line = reader.readLine()) != null)
{
// Append server response in string
sb.append(line + "\n");
Log.e("inside", "while loop");
}
play_response = sb.toString();
}
catch(Exception ex)
{
}
finally
{
try
{
reader.close();
}
catch(Exception ex) {}
}
Log.e("play response from the server", ""+play_response);
}else
{
Toast.makeText(getApplicationContext(), "Sorry you don't have cards.buy a new card now", Toast.LENGTH_LONG).show();
}
JSONObject jo = new JSONObject(play_response);
pos1 = jo.getString("0");
pos2 = jo.getString("1");
pos3 = jo.getString("2");
pos4= jo.getString("3");
pos5 = jo.getString("4");
pos6= jo.getString("5");
pos7= jo.getString("6");
pos8= jo.getString("7");
pos9= jo.getString("8");
Log.e("value of 1st place of array", "array value "+pics[7]);
}
我建议使用加载器。见[文件]
因此,您可以在Loade中的非ui线程中传输图像加载可能使用Loader?因此,您可以通过编程方式添加images@xoxol_89你能解释一下吗。。