我有我的主要启动类加载main.xml但我正在试图弄清楚如何从另一个从数据库加载信息的类访问TextView.我想将该信息发布到TextView.
到目前为止,我还没有在Google上找到任何有用的示例.
编辑:
这是我正在做数据库工作的类:
import android.widget.TextView;import android.view.View;
public class DBWork{
private View view;
...
TextView tv = (TextView) view.findViewById(R.id.TextView01);
tv.setText("TEXT ME")
然而,每次我这样做,我都会得到一个nullpointerexception
解决方法:
如果我是你,我会在你的主Activity类中保留所有UI更新.您只需让DBWork类将要显示的文本返回到Activity.所以类似于:
public class Main extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
TextView tv = (TextView) view.findViewById(R.id.TextView01);
DBWork db = new DBWork("192.168.2.14:8080/DH/DPost";, "test_db");
tv.setText(db.getText());
}
}
那你的db类:
public class DBWork{
...
public String getText(){
//do stuff
return "";
}
}
请注意,您在onCreate期间执行的任何数据库操作都应尽可能快,因为它们在UI线程中运行.如果要执行长时间运行的数据库查询,则应使用AsyncTask或创建新线程并使用Handler更新UI.
标签:android,textview,view 来源: https://codeday.me/bug/20190531/1188933.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。