android 中如何点击一个图标实现另一个界面不是充满全屏的

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了android 中如何点击一个图标实现另一个界面不是充满全屏的相关的知识,希望对你有一定的参考价值。

android
中如何点击一个图标实现另一个界面不是充满全屏的,只是让当前布局文件成为后台,所跳出的界面成为焦点界面

要实现的内容大致如下:Button bt=(Button)findViewById(R.id.n)

bt.setOnClick........(new ,,,,,,)

void onClick()

Intent intent=new Intent(MainActivity.this,xxxxxxxx.class);

staratActivity(intent);



我这样的思路写出来的代码完全是跳转到了另一个Activity
所显示的界面就是一个充满全屏的新Activity,我现在要达到的目的,点击这个图标达到只让原来的布局文件成为后台,弹出的新Layou成为焦点,然后界面正好包裹里面的内容。而不是充满整个界面。求个参考代码。

);

    可以设置界面布局的宽度和高度,使之小于屏幕的宽高。当点击图标时开启一个新的activity,此时布局不会覆盖全屏。

    可以设置图标的点击事件为弹出一个对话框 Dialog,如果需要模态窗口可以弹出AlertDialog,设置好dialog的宽高就可以实现不覆盖全屏。

    在Mainfaest.xml 文件中activity元素里设置theme属性android:theme="@android:style/Theme.Dialog  可以让activity以对话框的形式展现。

    非模态的窗口还可以用popup menu实现。可以在当前视图上层展现布局,控制好宽高同样能达到效果

参考技术A 看你的要求,用dialog实现不是更合适嘛,如果非要启动一个activity,可以使用对话框风格的activity,就是在Manife.xml里给你要启动的activity标签配置如下属性android:theme="@android:style/Theme.Dialog"追问

dialog 昨天做的时候也考虑过但是,alert Dialog的背景能不能设置成#0000000的形式如果能设置成这样的话,完全符合我要表达意愿!

追答

其实dialog可以做到背景透明的,不过需要更改dialog的风格(style)

   @null
   true
   true
   true
   @android:color/transparent
   @android:color/transparent
   true
   0.6
   @style/Dialog_Anim

上面是我常用的dialog的style,你可以针对你的需求修改,建议别用alertDialog了,使用自定义dialog,更加灵活。当然,要是你觉得麻烦,也可以试试popupWindow

追问

谢谢大婶了,既然dialog能实现背景透明,那么问题也解决了。

本回答被提问者和网友采纳

android 如何实现无启动界面和应用图标的

最近在做这样一个功能,部署应用到手机上要求实现无应用图标和无启动页面,只需要一个后台service就行了。后经百般思索和google,想到一种解决方案。实现思路,单纯的一个service做启动页,android新的api貌似不支持了,于是通过传统的发送广播启动service方案被否定了,于是就想到还是用到activity只是不让它显示界面,然后在activity里面启动后台service,鄙人技术水平有限,勿喷。如下:

1. 实现无应用图标。

 <intent-filter>
   <action android:name="android.intent.action.MAIN"/
   <category android:name="android.intent.category.LAUNCHER"/>
    <data
        android:scheme="com.xx.aa"/>
 </intent-filter>

<intent-filter> 加入<data android:scheme="com.xx.aa"/>

注意:android:scheme是大小写敏感的,必须以小写字母开头
也就是这个MainActivity可以响应Uri为com.android.example://AuthActivity的特定 Intent
但是为什么加入这个之后app就不显示图标了呢?
因为我们把app的入口Activity申明为由接收隐士的Intent来启动,这样自然也就不会显示图标了。
如果需要显示图标的话而且也必须响应上述Uri的话,那么我们可以在该Activity中再加入一个intent-filter标签,将data元素移到新建的标签中。
这样应用既可以显示图标又可以响应特定的Uri了。

2. 实现无启动界面

首先需要注释掉

//        setContentView(R.layout.activity_main);

然后需要在主activity里面

  <activity
            android:name=".MainActivity"
            android:theme="@android:style/Theme.NoDisplay"
            >

添加@android:style/Theme.NoDisplay 这个主题。

然后就是你启动你的后台Service了startService(new intent(this,xxx.class));

最后运行,如果报以下错误:

You need to use a Theme.AppCompat theme (or descendant) with this activity
......

你只需要修改你的Mainactivity 继承的AppCompatActivity
改为继承自 Activity即可。

以上是关于android 中如何点击一个图标实现另一个界面不是充满全屏的的主要内容,如果未能解决你的问题,请参考以下文章

如何利用android手机远程控制另一个android手机

如何利用android手机远程控制另一个android手机

android 如何实现无启动界面和应用图标的

android 如何实现无启动界面和应用图标的

如何修改Android应用程序的图标和名字

c#如何单击按钮显示另一个窗体