Iir*_*kka 50 android android-context android-activity
所以,我的第一个主要应用程序几乎已编码,我正在对我的代码进行优化.该应用程序工作正常,但我不确定我将上下文传递给其他类的方式.我不想以错误的方式去做.我在Stackoverflow中偶然发现了关于上下文的文章和问题,这是将它传递给非活动类的正确方法.我也阅读了文档,但作为一名芬兰人,使得复杂的技术更难以理解.
所以,一个简单的问题.我将主要活动的上下文传递给其他(帮助者)类的方式是否正确?如果没有,我在哪里可以阅读更多关于这些情况的更好实践.
例如:MainActivity.java
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle sis){
super(sis);
new Helper(MyActivity.this).makeMyAppAwesome();
}
}
Run Code Online (Sandbox Code Playgroud)
Helper.java
public class Helper {
Context context;
Helper(Context ctx){
this.context = ctx;
}
public void makeMyAppAwesome(){
makeBaconAndEggsWithMeltedCheese(context);
}
}
Run Code Online (Sandbox Code Playgroud)
这个可以吗?如果有人可以提供一个易于阅读的文章,并提供有关此主题的示例,那就太好了.
ET-*_*-CS 38
你可以这样做,使用ContextWrapper,如下所述.
例如:
public class MyContextWrapper extends ContextWrapper {
public MyContextWrapper(Context base) {
super(base);
}
public void makeMyAppAwesome(){
makeBaconAndEggsWithMeltedCheese(this);
}
}
Run Code Online (Sandbox Code Playgroud)
并从Activity中调用非活动类
new MyContextWrapper(this);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
32275 次 |
| 最近记录: |