我有2个班,一个有活动,一个有非。 这是:
public class getinfo extends ContextWrapper
{
public String getemei(Context context)
{
TelephonyManager mTelephonyMgr;
mTelephonyMgr = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);
String imei = mTelephonyMgr.getDeviceId();
return imei;
}
}
那么如何从主类调用getimei
类中的方法getinfo
?
//编辑,谢谢,它完成了,这应该是
public class MainActivity extends Activity {
Button bnt;
getinfo gif = new getinfo(null); //edited-work fine
@Overide
public void onCreate(Bundle savedInstanceState) {
bnt.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
String getemei = gif.getemei(getApplicationcontext()); //Work fine
tv.setText(getemei);
}
}
}
答案 0 :(得分:0)
您可以通过创建类
的对象来调用类的方法 getinfo gf=new getinfo();
//调用方法
String a=gf.getemei(getApplicationContext());
或
直接致电
public void onCreate(Bundle savedInstanceState) {
bnt.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
TelephonyManager mTelephonyMgr;
mTelephonyMgr = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);
String imei = mTelephonyMgr.getDeviceId();
tv.setText(imei);
}
答案 1 :(得分:0)
在侦听器中使用this
时,您将传递覆盖当前方法的对象的实例。你需要写MainActivity.this
。您的代码需要看起来像这样
String getemei = gif.getemei(MainActivity.this);
我不建议像你一样实现对IMEI的访问。这里的最佳做法是使用MVC Pattern并使用模型来访问这些值。
答案 2 :(得分:0)
带构造函数的非活动类
public class getinfo extends ContextWrapper
{
Context _con;
public getinfo(Context c)
{
_con=c;
}
public String getemei()
{
TelephonyManager mTelephonyMgr;
mTelephonyMgr = (TelephonyManager) _con.getSystemService(_con.TELEPHONY_SERVICE);
String imei = mTelephonyMgr.getDeviceId();
return imei;
}
}
带有实现的活动类
public class MainActivity extends Activity {
Button bnt;
getinfo gif;
@Overide
public void onCreate(Bundle savedInstanceState) {
bnt.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
gif=new getinfo(this);
String getemei=gif.getemei();
tv.setText(getemei);
}
}
}
使用下面的代码希望它能帮到你