奇怪的使用addview

今天要动态添加几条数据如果使用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可是面向对象。

发布了29 篇原创文章 · 获赞 44 · 访问量 5万+

猜你喜欢

转载自blog.csdn.net/ai1362425349/article/details/82626473