Fal*_*rri 8 android nested-class inner-classes listactivity android-activity
声明一个可以在另一个Activity类中扩展Activity的类可能吗?如果是,我将如何在清单中注册该类?那么,这是可以合理完成的事情还是一个坏主意?
我在想类似的东西
class ListClass extends ListActivity{
...
ArrayList items;
class ItemClass extends Activity{
...
Item item;
@Override
onCreate(){
Integer pos = getIntent().getExtras().getInt("pos");
item = items.get(pos);
}
}
@Override
onItemClick(int position){
startActivity(new Intent(this, ItemClass.class).putExtra("pos", position));
}
}
Run Code Online (Sandbox Code Playgroud)
请注意,语法显然不是100%正确,主要是伪代码.
Dus*_*inB 11
是的,它确实有效 - 它只是另一个类 - 您只需要在AndroidManifest.xml中使用内部类表示法声明您的活动:
<activity android:name =".ListClass $ ItemClass"/>
似乎对我来说工作正常,但也许当问到这个问题时,旧版本的Android不支持它?
不确定为什么要这样做,但你可以.
不,那不可能。毕竟,如果 Activity 在任何时候启动(例如,如果您通过意图启动它),Android 操作系统都需要实例化 Activity,并且在ItemClass没有父项的情况下不可能实例化 Activity ListClass。
请记住,每个活动都是完全独立的,可以通过意图在任何时候启动。
| 归档时间: |
|
| 查看次数: |
9542 次 |
| 最近记录: |