今天要动态添加几条数据如果使用recyclerview就不划算和不够简洁。于是在网上看了addview的使用。
于是就开始来使用了,结果直接。。。。无法形式怎么回事,因为是在OkhttpUtils工具中使用的,以为是更新ui是要在线程中进行的。后面一想不对,大神已经帮我们把这些做好了,然后就像是不是自己出现的问题,比如加一个textview来举例,在okhttputlis中式这样的写法:
TextView text=new TextView(MainActivity.this);
text.setText("content");
linearLayout.addView(text);
上面就是关键代码,下面是正常的:
TextView text=new TextView(this);
text.setText("content");
linearLayout.addView(text);
发现少了个MainActiivity,就行了。。。因为是在另外一个方法里面使用的OkhttpUtils所以必须写成
TextView text=new TextView(MainActivity.this);
很郁闷,因为这样是不行的。在想有没有解决的方法,后面发现,如果只获取值设置到文本框中,那么我为什么不封装这么一个方法呢,上代码:
private void initText(String text){
TextView text=new TextView(this);
text.setText("content");
linearLayout.addView(text);
}
这样就避免使用MainActivity.this了,现在在okhttputils方法中只需要应用这个方法就行了
initText("content");
后面总结下,放个方式思考说不到就找到了解决方法,比较java可是面向对象。