如何使用截击称赞多个Youtube频道

如何使用截击称赞多个Youtube频道,youtube,android-volley,Youtube,Android Volley,我正在为我的所有客户创建一个应用程序youtube频道,我在用截击来赞扬这些频道 我的问题是,当我点击任何频道时,它只会检索一个频道,那么我如何让截击理解它应该在点击时检索不同的频道呢 这是代码示例> ListView频道列表 ArrayList<VideoDetails> videoDetailsArrayList; ChannelAdapter channelAdapter; String channelUrl=""; String channelId; @

我正在为我的所有客户创建一个应用程序youtube频道,我在用截击来赞扬这些频道

我的问题是,当我点击任何频道时,它只会检索一个频道,那么我如何让截击理解它应该在点击时检索不同的频道呢

这是代码示例>

ListView频道列表

ArrayList<VideoDetails> videoDetailsArrayList;
ChannelAdapter channelAdapter;
String channelUrl="";
String channelId;

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

    channelList = findViewById(R.id.channelList);
    videoDetailsArrayList = new ArrayList<>();

    channelAdapter = new ChannelAdapter(ChannelActivity.this,videoDetailsArrayList);

    channelUrl = String.format(getIntent().getStringExtra("channelUrl"), channelId);
    channelId = getIntent().getStringExtra("id");


    displayVideos();
}

private void displayVideos() {

    RequestQueue requestQueue = Volley.newRequestQueue(getApplicationContext());
    StringRequest stringRequest = new StringRequest(Request.Method.GET, channelUrl, new Response.Listener<String>() {
        @Override
        public void onResponse(String response) {

            try {
                JSONObject jsonObject = new JSONObject(response);
                JSONArray jsonArray = jsonObject.getJSONArray("items");

                for(int i=0;i<jsonArray.length();i++){
                    JSONObject jsonObject1 = jsonArray.getJSONObject(i);
                    JSONObject jsonVideoId = jsonObject1.getJSONObject("id");
                    JSONObject jsonObjectSnippet = jsonObject1.getJSONObject("snippet");

                    JSONObject jsonObjectDefault = jsonObjectSnippet.getJSONObject("thumbnails").getJSONObject("medium");

                    String video_Id = jsonVideoId.getString("videoId");

                    VideoDetails vd = new VideoDetails();

                    vd.setVideoId(video_Id);
                    vd.setTitle(jsonObjectSnippet.getString("title"));
                    vd.setDescription(jsonObjectSnippet.getString("description"));
                    vd.setUrl(jsonObjectDefault.getString("url"));

                    videoDetailsArrayList.add(vd);

                }

                channelList.setAdapter(channelAdapter);
                channelAdapter.notifyDataSetChanged();

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



        }
    }, new Response.ErrorListener() {
        @Override
        public void onErrorResponse(VolleyError error) {
            Toast.makeText(getApplicationContext(),error.getMessage(),Toast.LENGTH_LONG).show();

        }
    }
    );

    requestQueue.add(stringRequest);
}
ArrayList videoDetailsArrayList;
信道适配器信道适配器;
字符串channelUrl=“”;
字符串信道ID;
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_频道);
channelList=findViewById(R.id.channelList);
videoDetailsArrayList=新的ArrayList();
channelAdapter=新的channelAdapter(ChannelActivity.this,videoDetailsArrayList);
channelUrl=String.format(getIntent().getStringExtra(“channelUrl”),channelId);
channelId=getIntent().getStringExtra(“id”);
显示视频();
}
私有void displayVideos(){
RequestQueue RequestQueue=Volley.newRequestQueue(getApplicationContext());
StringRequest StringRequest=新建StringRequest(Request.Method.GET、channelUrl、new Response.Listener()){
@凌驾
公共void onResponse(字符串响应){
试一试{
JSONObject JSONObject=新JSONObject(响应);
JSONArray JSONArray=jsonObject.getJSONArray(“项”);

对于(int i=0;Iin <代码>显示视频方法,有一个<代码> ChhanelURL< /COD> -该变量的值是什么?也可以考虑在<代码>响应< <代码>中检查<代码>响应< /代码>的结果-也许您只得到(1)项目。考虑您的问题,并添加您所请求的样本数据,当前数据和期望的结果。嗨,马珂,非常感谢您的评论,是的,我得到一个频道的结果,我的问题是我想从不同的渠道获得,就像Netflix,当我点击频道图标,我可以得到整个频道,你知道吗?我的意思是什么?嗨,穆罕默德,
displayVideos
接收什么?-我想我理解你,但是,我相信你只请求了一个频道;对于多个频道,你应该更改请求。我不熟悉你的代码,但是,
channelUrl
channelId
属于一个频道-你想要多个频道,因此,例如:使用YouTube数据API,您可以使用
搜索
请求,并仅指定对
频道
的响应-我不知道您之前使用了什么来获取
频道URL
频道ID
的值。您好,Marco,这正是我的问题,我正在接收一个频道,我想要多个频道,CChannelURL应该链接到每个横幅下面是我应该单击以检索ChannelOriginalBannerList.add(新横幅视频(1,“测试“,”));OriginalBannerList.add(新横幅视频(2,“测试“,”)的代码);