Android 进阶开发第一天-网络数据的访问导入(中篇)

承接上文,我们来到了MainActivity.java板块的操作,
我们现在要完成的操作是:点击按钮“上”,按钮下方界面可以跳出来一个笑话。
局部代码如下

 public void leftbutton(View view) {
        Ion.with(this)
                .load("http://api.icndb.com/jokes/random")
                .asString()
                .setCallback(new FutureCallback<String>() {
                    @Override
                    public void onCompleted(Exception e, String result) {
                         /*
                        { "type": "success",
                        "value":
                        { "id": 597,
                         "joke": "Once death had a near Chuck Norris experience.",
                        "categories": [] }
                        }
                         */
                         try
                         {
                                JSONObject jsondata=new JSONObject(result);
                                JSONObject value=jsondata.getJSONObject("value");
                                String joke=value.getString("joke");
                             TextView textVie=(TextView)findViewById(R.id.tex);
                             textVie.setText(joke);
                         }catch(JSONException jsonError)
                         {
                             Log.wtf("JSON ERROR",jsonError);
                         }
                    }
                });
}

介绍一下这个代码值得注意的知识点:
1:首先我们要导入一个Ion库(导入方法:找到android studio左边APP文件夹,下拉找到build.gradle(Module:app ),在dependencies {。。。}中加入一行代码-- compile ‘com.koushikdutta.ion:ion:2.+’)
2:注意这是导入库的一个固定模板

Ion.with(this)
                .load("。。。“)
                .asString()
                .setCallback(new FutureCallback<String>() {
                    @Override
                    public void onCompleted(Exception e, String result)
                     {     
                     		。。。                 
                    }
                });

3:网络链接是进行导入在 load(。。。) 中的,如.load(“http://api.icndb.com/jokes/random”)
4:

public void onCompleted(Exception e, String result)
                    {     
                    		。。。                 
                   }          

onCompleted() 方法是程序进行网络访问的方法 ,里面要应用try ,catch语句来应对此事件
JSONObject代表一种数据传输格式{“key1”:value1,“key2”,value2…}

 { "type": "success",
                        "value":
                        { "id": 597,
                         "joke": "Once death had a near Chuck Norris experience.",
                        "categories": [] }
                        }

5:来说说里面的事件内容

JSONObject jsondata=new JSONObject(result);
 JSONObject value=jsondata.getJSONObject("value");
 String joke=value.getString("joke");

第一行:构造一个当前活动JSONObject层的对象
第二行:构造一个当前活动层下的value层的对象
第三行:将value层下的“joke”字符串赋值给一个对象
6:将相应的字符串传送给Textview,再调入xx.setText(yy)即可显示。

1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 、4下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。、可私 6信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 、4下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。、可 6私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 、4下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。、可私 6信博主看论文后选择购买源代码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值