Development tools: Android Studio, Cafe 24 Server (DB), php, MySql
Creating bulletin board. I even expressed the title of the posts currently stored in the DB as a list view. Now, if you click on the list view with the title, you can move on to other activities and implement the title/author/date/content.
The contents of the backgroundTask2 onPostExecute.
@Override
protected void onPostExecute(String result) {
try {
JSONObject jsonObject = new JSONObject(result);
JSONArray jsonArray = jsonObject.getJSONArray("response");
int count = 0;
String POST_TITLE, POST_USER, POST_TS , POST_CONTENT;
while(count < jsonArray.length()) {
JSONObject object = jsonArray.getJSONObject(count);
POST_TITLE = object.getString("POST_TITLE");
POST_USER = object.getString("POST_USER");
POST_TS = object.getString("POST_TS");
POST_CONTENT = object.getString("POST_CONTENT");
BoardSelect boardSelect = new BoardSelect(POST_TITLE, POST_USER, POST_TS, POST_CONTENT);
boardSelectList.add(boardSelect);
count++;
}
} } catch (Exception e) {
e.printStackTrace();
}
}
The above code is the data from the DB to be imported when you click the list view. When I filmed it with Sysout, the data came in well one by one. I even brought it like this, but if I turn over the int like this, everything in the DB will be transferred together. When I click on a list view, I don't know how to implement the data of that list view separately and spray it on activities.
//Content Lookup
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
Intent intent = new Intent(MainActivity.this, SelectActivity.class);
new BackgroundTask2().execute();
}
});
I think when you click on the list view, you can do something with the position... I can't google this and that, so I'm posting a question.
android array listview
From the list of data in the DB that you handed over to the list view, You only need to extract the data that fits the position of the clicked list view.
POST_TITLE = object.getString("POST_TITLE");
POST_USER = object.getString("POST_USER");
POST_TS = object.getString("POST_TS");
POST_CONTENT = object.getString("POST_CONTENT");
Don't take the string one by one. Just put it in the arrangement
ArrayList<String> POST_TITLE = new ArrayList<>();
POST_TITLE.add(object.getString("POST_TITLE")
If you make an arrangement like this and put it in,
//query inquiry
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
Intent intent = new Intent(MainActivity.this, SelectActivity.class);
//List Position = Array Position
intent.putExtra("POST_TITLE",POST_TITLE.get(position));
//If I do this, the title in the clicked position will go over, right?
new BackgroundTask2().execute();
}
});
© 2024 OneMinuteCode. All rights reserved.