透明activity样式:
android:theme="@android:style/Theme.Translucent.NoTitleBar.Fullscreen"
这句代码,当你是建的empty activity project时,默认继承的是AppCompat这个类。所以在AndroidMifext.xml文件中用上述代码会导致程序错误,打不开,不清楚具体是什么原因。如果你的activity是继承Activity,应该不会这样。
解决办法:自定义透明样式
在res-theme-theme.xml文件中添加样式:
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
<!-- Customize your theme here. -->
<item name="android:windowIsTranslucent">true</item>
<item name="android:windowBackground">@android:color/transparent</item>
<item name="android:windowContentOverlay">@null</item>
</style>
然后在AndroidManifext.xml文件中引用即可。
透明是什么意思?假如你的布局文件空空如何,那么就相当于铺上了一层透明的纸。
假如你的布局文件中有按钮,文本等控件,那么你的控件其实是在这张透明的纸上,纸透明,看起来的效果就是与底层的图标交错覆盖,类似这种:
此时你点击图标是没用的,因为有透明 的纸挡着呢!!
service中启动新的activity:
Intent intent3 = new Intent(getApplicationContext(), MainActivity2.class);
intent3.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent3);
service中启动其他软件,指定目标软件的activity:
Intent intent2 = new Intent();
intent2.setClassName("com.example.demob", "com.example.demob.MainActivity");
intent2.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent2);
广播接收者打开后台服务:
Intent serviceIntent = new Intent(MainActivity.this, MyService.class);
startService(serviceIntent);
在有UI的android程序中,