cre*_*ver 13 android android-activity
我在我的应用程序中有一个活动,我保留了
android:enabled="false"
Run Code Online (Sandbox Code Playgroud)
现在我希望当单击一个按钮时它应该更换
android:enabled="true"
Run Code Online (Sandbox Code Playgroud)
我怎样才能做到这一点?
Ema*_*lin 26
以下是如何启用/禁用活动的示例:
PackageManager pm = getPackageManager();
pm.setComponentEnabledSetting(new ComponentName(this, com.packagename.MyActivity.class),
PackageManager.COMPONENT_ENABLED_STATE_DISABLED, PackageManager.DONT_KILL_APP);
pm.setComponentEnabledSetting(new ComponentName(this, com.packagename.MyActivity.class),
PackageManager.COMPONENT_ENABLED_STATE_ENABLED, PackageManager.DONT_KILL_APP);
Run Code Online (Sandbox Code Playgroud)
这是一个不错的方法:
public static void setActivityEnabled(Context context,final Class<? extends Activity> activityClass,final boolean enable)
{
final PackageManager pm=context.getPackageManager();
final int enableFlag=enable ? PackageManager.COMPONENT_ENABLED_STATE_ENABLED : PackageManager.COMPONENT_ENABLED_STATE_DISABLED;
pm.setComponentEnabledSetting(new ComponentName(context,activityClass),enableFlag,PackageManager.DONT_KILL_APP);
}
Run Code Online (Sandbox Code Playgroud)
用法示例:
setActivityEnabled(this,SomeActivity.class,false);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
15747 次 |
| 最近记录: |