[英]Manupulate main activity elements from non-activity java class
我想从另一个Java类处理主要的活动元素,例如TextView或Radiobutton。 还可以获得有关文本的信息,例如getText()函数。 我怎样才能做到这一点 ?
public class main_activity extends AppCompatActivity {
Button query;
BusTimer bus_timer = new BusTimer();
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
setContentView(R.layout.main_activity);
query=(Button) findViewById(R.id.b_sorgu);
query.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
bus_timer.onCreate(savedInstanceState);
}
});
}
public class BusTimer extends Activity{
TextView cMeter;
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.main_activity);
cMeter = (TextView) findViewById(R.id.cMetre);
cMeter.setText("Hi");
}
我试图这样,但没有成功。 有什么帮助吗?
有两种访问不同类的元素和函数的方法
您不应该扩展Activity,除非它确实是一个活动,而不仅仅是POJO。 您需要做的是将活动作为参数传递给另一个类,并将其用于findViewById:
BusTimer bus_timer = new BusTimer(this);
public class BusTimer {
TextView cMeter;
public BusTimer(Activity activity){
cMeter = (TextView) activity.findViewById(R.id.cMetre);
cMeter.setText("Hi");
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.