你好,开发人员。
我有一个特殊的问题。我写了一个供个人使用的应用程序。学习Android编码。我不是这里最专业的程序员。该应用程序包含近300个活动。现在,我要实现搜索功能。我想输入一个关键字,应用程序必须打开相应的Activity。关键字数量已关闭。我不想添加关键字。我只想搜索那些。在用户端。如果需要更多关键字,可以添加它们。但首先,关键字将是固定的。
非常感谢您。
答案 0 :(得分:0)
首先,您需要使用此代码获取应用程序中的所有活动
public ActivityInfo[] getActivityList() throws NameNotFoundException {
PackageManager pm = this.getPackageManager();
PackageInfo info = pm.getPackageInfo(getApplicationContext.getPackageName(),
PackageManager.GET_ACTIVITIES);
ActivityInfo[] list = info.activities;
return list;
}
之后,您需要使用该字符串名称开始活动
String activityToStart = "com.example.MainActivity";
try {
Class<?> c = Class.forName(activityToStart);
Intent intent = new Intent(this, c);
startActivity(intent);
} catch (ClassNotFoundException ignored) {
}
我知道代码不完整,但是过程相同。不客气。