在Android清单文件中声明内部活动

6
在我的线程中,我创建了一个内部活动'B',以便在某一点上启动另一个带有结果的活动。我需要在我的Android清单文件中声明它,但是无法确定它的名称,因为标准的".B"不起作用,因为它说该活动不存在。我该如何声明这个活动?
谢谢

我尝试过将类名“A”作为前缀像“.A.B”,也尝试了限定名称。但是,因为它包括线程变量的名称和“run()”命令,所以这是非法的。 - Darius
你正在使用Eclipse吗?它可以为您检测项目中的活动,您只需选择它们进行添加即可。 - Nathan Schwermann
3个回答

7
  1. As someone pointed out, in AndroidManifest, use the $ sign, like:

    <activity android:name=".A$B">
    
  2. Declare class B as static:

    public static class B
    

3
“public static”修饰符确实非常重要! - bk138

5
要引用内部类,请使用“$”而不是点号。
.A$B

它也可以在包路径前面添加

com.yourcompany.projectname.A$B

1

做相反的事情,将类创建为活动并将线程作为内部类。


好的,我已经将我的内部类移动到存储线程处理程序的活动中。必须删除对线程变量的任何引用,因为为了在清单中声明活动,它不仅必须是公共的,而且还必须是静态的。 - Darius

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接