마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

외부서버의 데이터를 텍스트뷰에 어떻게 넣을까요??ㅠㅠ

0 추천

 

게시판을 만드는 중입니다

리스트뷰 목록을 클릭해서 들어가면 뜨는 화면인데

외부 서버에 있는 제목과 내용 데이터를 이렇게 텍스트뷰 2개에 각각 넣어주고싶습니다.

import android.annotation.SuppressLint;
import android.os.AsyncTask;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;

import org.json.JSONArray;
import org.json.JSONObject;

import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;

public class review_content extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_review_content);

        new BackgroundTask().execute();
    }

    @SuppressLint("StaticFieldLeak")
    class BackgroundTask extends AsyncTask<Void, Void, String> {

        String target;

        @Override
        protected void onPreExecute(){
            target = "http://제 아이디.cafe24.com/reviewList.php";
        }

        @Override
        protected String doInBackground(Void... voids) {

            try{
                URL url = new URL(target);
                HttpURLConnection httpURLConnection = (HttpURLConnection) url.openConnection();
                InputStream inputStream = httpURLConnection.getInputStream();
                BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(inputStream));
                String temp;
                StringBuilder stringBuilder = new StringBuilder();
                while((temp = bufferedReader.readLine()) != null)
                {
                    stringBuilder.append(temp).append("\n");
                }
                bufferedReader.close();
                inputStream.close();
                httpURLConnection.disconnect();
                return stringBuilder.toString().trim();

            }catch (Exception e){
                e.printStackTrace();
            }


            return null;
        }

        @Override
        public void onProgressUpdate(Void... values){
            super.onProgressUpdate();
        }

        @Override
        public void onPostExecute(String result){
            try{
                JSONObject jsonObject = new JSONObject(result);
                JSONArray jsonArray = jsonObject.getJSONArray("response");
                int count = 0;
                String Title="", reviewContent="" ;
                while(count < jsonArray.length()){

                    JSONObject object = jsonArray.getJSONObject(count);

                    Title = object.getString("reviewTitle");
                    reviewContent = object.getString("content");









                    count++;

                }
            } catch(Exception e){
                e.printStackTrace();
            }
        }


    }



}

 

커스텀리스트뷰에 넣는건 했는데 텍스트뷰에 하는걸 모르겠어요ㅠㅠㅠ

reviewList.add(review);

 

리스트뷰에 넣을때는 이렇게 해줬었는데

이 경우엔 저기 count++ 위 코드에 어떻게 써줘야할까요..???

익명사용자 님이 2018년 11월 15일 질문

1개의 답변

0 추천
질문을 이해하기가 조금 어렵네요

리스트 뷰 목록에 제목만 들어 가 있고, 리스트 뷰를 클릭하면 제목과 내용이 있는 새로운 액티비티를 생성한다는 것인지? 이게 맞다면 제목과 타이틀을 담는 class를 하나 생성하시고, 그 class를 intent로 액티비티에 넘겨주면 쉽게 만들 수 있습니다.

저 방법이 아니고 리스트 뷰에 제목과 내용을 같이 보여주고 싶으시면, 커스텀 리스트뷰를 사용하셔서

구현하시면 되실 거 같습니다.

이 두 방법이 아니면 댓글 달아주세요 답변해드리겠습니다.
평범 (3,560 포인트) 님이 2018년 11월 15일 답변
...