首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

有没有办法在屏幕两端显示两个android按钮

是的,可以通过在屏幕两端显示两个Android按钮来实现。在Android开发中,可以通过以下两种方式实现:

  1. 自定义布局:
    • 首先,在XML布局文件中定义一个LinearLayout或RelativeLayout,并设置其gravity属性为左对齐和右对齐。
    • 在该布局中添加两个Button元素,分别设置为需要显示的按钮,并设置布局参数使其位于左侧和右侧。
    • 在Activity中,使用setContentView方法将该布局文件设置为当前界面的布局。
    • 最后,为这两个按钮分别设置点击事件的监听器,以实现具体功能。
  • 使用Toolbar:
    • 在XML布局文件中,添加一个Toolbar元素,并设置其宽度为match_parent。
    • 在Toolbar中添加两个Menu Item,分别代表两个按钮,并设置显示位置为左侧和右侧。
    • 在Activity中,使用setSupportActionBar方法将Toolbar设置为ActionBar。
    • 在Activity中,重写onCreateOptionsMenu方法,通过MenuInflater将菜单资源文件与Toolbar关联。
    • 最后,为两个Menu Item分别设置点击事件的监听器,以实现具体功能。

通过以上两种方式,可以在屏幕两端显示两个Android按钮,并根据实际需求自定义按钮样式、功能和点击事件。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • Material Design 实战 之第三弹—— 悬浮按钮和可交互提示

    一个漂亮的悬浮按钮就出现在屏幕右下角了: ? ? ?...而Snackbar则在这方面进行了扩展,它允许提示当中加人一个可交互按钮,当用户点击按钮的时候可以执行一些额外的逻辑操作。...简单起见,我们动作按钮的点击事件里面弹出一个Toast提示。 最后调用show()方法让Snackbar显示出来。...可以看到,Snackbar从屏幕底部出现了,上面有我们所设置的提示文字,还有一个Undo按钮按钮是可以点击的。 ? 过一段时间后Snackbar会自动从屏幕底部消失。...不过你有没有发现一个bug,这个Snackbar竟然将我们的悬浮按钮给遮挡住了。虽说也不是 什么重大的问题,因为Snackbar过一会儿就会自动消失,但这种用户体验总归是不友好的。

    1.8K30

    移动开发实用

    什么是Retina 显示屏,带来了什么问题 retina:一种具备超高像素密度的液晶屏,同样大小的屏幕显示的像素点由1个变为多个,如在同样带下的屏幕上,苹果设备的retina显示屏中,像素点1个变为4...个 高清显示屏中的位图被放大,图片会变得模糊,因此移动端的视觉稿通常会设计为传统PC的2倍 那么,前端的应对方案是: 设计稿切出来的图片长宽保证为偶数,并使用backgroud-size把图片缩小为原来的...webkit-user-modify:read-write-plaintext-only }; -webkit-user-modify有个副作用,就是输入法不再能够输入多个字符 另外,有些机型去除不了,如小米2 对于按钮类还有个办法...input[type=radio]::-ms-check,input[type=checkbox]::-ms-check{ display: none; } 禁用PC端表单输入框默认清除按钮 当表单文本输入框输入内容后会显示文本清除按钮...4+、winphone 8 要做到全兼容的办法,可通过绑定ontouchstart和ontouchend来控制按钮的类名 <!

    6.5K30

    actionbar完全解析(一)

    其中,[1]是ActionBar的图标,[2]是两个action按钮,[3]是overflow按钮。...则指定了该按钮显示的位置,主要有以下几种值可选:always表示永远显示ActionBar中,如果屏幕空间不够则无法显示,ifRoom表示屏幕空间够的情况下显示ActionBar中,不够的话就显示...可以看到,action_compose和action_delete这两个按钮已经ActionBar中显示出来了,而action_settings这个按钮由于showAsAction属性设置成了never...这里我们注意到,显示ActionBar上的按钮都只有一个图标而已,我们title中指定的文字并没有显示出来。...当然,如果你认为这样不够美观,希望overflow中的Action按钮也可以显示图标,我们仍然可以想办法来改变这一默认行为。

    1.1K100

    Android ActionBar完全解析,使用官方推荐的最佳导航栏(上)

    其中,[1]是ActionBar的图标,[2]是两个action按钮,[3]是overflow按钮。...则指定了该按钮显示的位置,主要有以下几种值可选:always表示永远显示ActionBar中,如果屏幕空间不够则无法显示,ifRoom表示屏幕空间够的情况下显示ActionBar中,不够的话就显示...可以看到,action_compose和action_delete这两个按钮已经ActionBar中显示出来了,而action_settings这个按钮由于showAsAction属性设置成了never...这里我们注意到,显示ActionBar上的按钮都只有一个图标而已,我们title中指定的文字并没有显示出来。...当然,如果你认为这样不够美观,希望overflow中的Action按钮也可以显示图标,我们仍然可以想办法来改变这一默认行为。

    3.3K101

    Android百分比布局之layout_weight属性

    可是有没有办法像div+css里那样根据屏幕的尺寸,对控件布局进行“百分比”设定呢?这时就需要用到LinearLayout和他的子控件属性layout_weight。...1.layout_weight值 我们希望下面两个按钮各占屏幕的一半: 图片 图片 那么只需要把两个按钮“layout_weight”值设成相等值(比如:1),并且把“layout_width”设成“...既然如此,那么layout_weight具体是什么数值无所谓了,只要保证两个按钮的值相等就能实现各占50%了,我们把两个按钮的layout_weight同时设成“0.5”或者“2”看看,验证我们的推想。...2.weightSum值 如果我们只有一个按钮,希望占屏幕的50%并且中间,如下面的效果: 竖屏效果 横屏效果 我们只有一个控件可以设置layout_weight属性,而不管我们设多少,...我们看个例子: 最右边的按钮的空间大小是根据其内容设置的,而左边的两个按钮则各占剩下空间的50%,这里的剩下空间就是我们一直说的“剩余空间”。

    71130

    移动端输入框填坑系列(一)

    然而,移动端输入框总会遇到各种各样的问题,无论是样式还是ios和android两端体验不一致都是很让我们头疼的问题,那么如何使移动web的输入框体验更贴近原生也成了一个需要我们多多思考和研究的问题。...办法二: 将第二个办法之前先来讲讲下面的几种情况: 1、非直接的文字输入 什么叫做非直接的文字输入呢? 当输入汉字时必然会是非直接输入,需要我们点选才能正式输入。...android效果: 使用 fixed 定位。 可见 android 中唤起键盘是覆盖页面上,不会压缩页面。... ios 上的效果: 那么如果我们需要将输入框固定在屏幕下方,而当键盘被唤起同时输入框固定在键盘上方(如下图样式)该如何解决呢? 首先我们来看下 ios 的表现。...注意:键盘弹起需要一点时间,所以计算当前屏幕高度也需要使用setInterval。

    6.9K00

    React Native学习笔记(三)—— 样式、布局与核心组件

    这其实就是Android系统中所使用的长度单位。 举例来说,2dp宽,2dp高的内容,不同分辨率但屏幕尺寸一样的设备上所显示出的物理大小是一样的。...图3. 2dp * 2dp大小的内容 同样尺寸的屏幕中所占据的物理大小一致 Android中字体大小使用另外一个单位,叫做scale independent pixels,简称sp。..., Android 上则会渲染一个蓝色圆角矩形带白字的按钮。...点击这个按钮会调用"onPress"函数,具体作用就是显示一个 alert 弹出框。你还可以指定"color"属性来修改按钮的颜色。...testID 用来端到端测试中定位此视图。 thumbColor='x' 开关上圆形按钮的背景颜色。 iOS 上设置此颜色会丢失按钮的投影。

    14.2K31

    Android开发笔记(一百五十九)Android7.0的分屏模式

    现在的手机屏幕越来越大,使得屏幕上同时开多个窗口不再奢侈,因此Android从7.0开始顺势推出了分屏功能,也被称作多窗口模式。...比如把竖长的手机屏幕分成上下两个窗口,一边在上面的窗口中观看电影,一边在下面的窗口中聊天,可谓娱乐、工作两不误。那么分屏功能需要开发者进行哪些适配工作呢?...这个任务界面仿佛跟低版本的手机没什么不同,再瞅瞅屏幕上方有没有什么异样,是不是左上角看到了一个“分屏模式”的按钮? ?...继续点击任务列表里的任何一个App,此刻被选中的App马上展示到了屏幕的下半部分。于是整个手机屏幕分成了上下两个窗口,每个窗口各自运行自己的App界面,从而实现了对屏幕进行分屏的操作。 ?...分屏后的两个App,用户可以像往常一样点击、刷新和后退。要是玩腻了分屏,也可按下任务键,此时屏幕顶端中央浮现出了一个“退出分屏”的按钮,点击该按钮即可恢复原来的全屏模式。 ?

    1.6K20

    我把 Toolbar 转了一下变成了菜单

    侧滑菜单我们见的太多了,有没有想过有别的方式弹出菜单? 比如,让 Toolbar 变成菜单? 我也不知道怎么描述这个效果了,直接放效果图吧: image.png 炸不炸! 其实实现起来超简单。...思路 看上去好像 Toolbar 变成了菜单,但大家也能猜到,这里面的旋转菜单其实和 Toolbar 是两个控件,左上角的菜单按钮也是也是两个按钮,只不过同样的位置放了同样的图片。...然后提供两个方法来设置展开和收起的按钮: /** * 设置展开按钮 */ public void setExpandButton(View expandButton) { expandButton.setOnClickListener...我的计算方法是,菜单控件的旋转角度,等于横向滑动距离占屏幕宽度的比例,乘以 -90°。至于为什么宽度要乘以 0.8,我是为了让手指在屏幕上滑过 80% 的宽度,就可以将菜单完全收起。...默认的 Toolbar 高度为 56dp,如果菜单按钮居中显示的话,可以使用: android:transformPivotX="28dp" android:transformPivotY="28dp"

    63720

    Android通知栏微技巧,8.0系统中通知栏的适配

    那么就目前来说,是没有办法对这些消息做区分的,我要么同意接受所有消息,要么就屏蔽所有消息,这是当前通知栏的痛点。 那么Android 8.0系统中,Google也是从这个痛点开始下手的。...刚才我们创建的两个通知渠道这里已经显示出来了。可以看到,由于这两个通知渠道的重要等级不同,通知的行为也是不同的,聊天消息可以发出提示音并在屏幕上弹出通知,而订阅消息只能发出提示音。...:onClick="sendSubscribeMsg" /> 这里我们布局文件中加入了两个按钮,很显然,一个是用于触发聊天消息渠道通知的,一个是用于触发订阅消息渠道通知的...接下来点击发送订阅消息按钮,你会发现现在屏幕上不会弹出一条通知提醒了,只会在状态栏上显示一个小小的通知图标: ? 因为订阅消息通知的重要等级是默认级别,这就是默认级别通知的展示形式。...刚才提到了,快速向左或者向右滑动可以关闭一条通知,但如果你缓慢地向左或者向右滑动,就会看到这样两个按钮: ? 其中,左边那个时钟图标的按钮可以让通知延迟显示

    2.8K40

    Android 天气APP(二十八)地图搜索定位

    因为展开之后是不能设置固定的宽度,所以需要获取屏幕的宽度,initView方法中写入 //获取屏幕宽高 WindowManager manager = getWindowManager...而我开始动画的时候也加了一个对于定位按钮的判断,因为这个控件和定位按钮同一水平线上,又因为底层的布局用的是FrameLayout,所以会出现覆盖的情况,这并不是我想要的,所以我加了一个控制,如果展开的时候处于手动定位则隐藏自动定位按钮...= 0) {//自动定位 btnAutoLocation.show();//隐藏自动定位按钮 } } 当然我们需要在点击的时候调用这两个方法 ?...OK,我们还需要与这个底部控件做协调,比如我们之前有过这样一个操作就是当手动定位时,拖动底部布局到顶部然后隐藏这个按钮,回到底部时显示这个按钮,那么同理我是不是也应该对这个搜索布局做同样的事呢?...mvplibrary中的anim包下新建两个动画xml文件 scale_big_expand.xml <?xml version="1.0" encoding="utf-8"?

    96610

    Flutter组件学习(一)—— Text组件

    = null), 29 data = null, 30 super(key: key); 31} 构造方法有两个,一个是默认的 Text 样式,一个是现实丰富 Text.rich 样式...,这样解释大家应该能猜得到就和 Android 中的 SpannableString 一样,下面来看一下 Text 组件的一些 API : API名称 功能 textAlign 文本对齐方式(center...居中,left左对齐,right右对齐,justfy两端对齐) textDirection 文本方向(ltr从左至右,rtl从右至左) softWare 是否自动换行(true自动换行,false单行显示...,超出屏幕部分默认截断处理) overflow 文字超出屏幕之后的处理方式(clip裁剪,fade渐隐,ellipsis省略号) textScaleFactor 字体显示倍率 maxLines 文字显示最大行数...padding: const EdgeInsets.fromLTRB(20.0, 10.0, 20.0, 0.0), 17 child: Text( 18 '设置超出屏幕之后的显示规则设置超出屏幕之后的显示规则设置超出屏幕之后的显示规则设置超出屏幕之后的显示规则

    1.5K20

    Android提醒微技巧,你真的了解Dialog、Toast和Snackbar吗?

    这个效果就比较丑了,不过没办法,这就是2.3系统当时的风格呀。 人的审美总是进步的,我们有没有什么办法老版本的系统中也使用Material Design风格的Dialog呢?...当然有,Google已经充分考虑到了这一点,appcompat-v7库中也提供了一个AlertDialog类,完整路径是: android.support.v7.app.AlertDialog 我们使用这个包中的...Snackbar使用一个动画效果从屏幕的底部弹出来,过一段时间后也会自动消失。...使用Snackbar之前,首先需要在app/build.gradle中添加相应的依赖: dependencies { compile 'com.android.support:design:23.4.0...最后调用show()方法让Snackbar显示出来。 现在重新运行一下程序,效果如下图所示: ? 可以看到,Snackbar的效果有点类似于Toast,不过它是从屏幕底部弹出来的。

    1.3K80

    Android使用多线程进行网络聊天室通信

    TCP/IP通信协议是一种可靠的网络协议,它在通信的两端各建立一个Socket,从而在通信的两端之间形成网络虚拟链路。一旦建立了虚拟的网络链路,两端的程序就可以通过虚拟链路进行通信了。...每个客户端该包含两条线程:一条负责生成主界面,响应用户动作,并将用户输入的数据写入Socket对应的输出流中;另一条负责读取Socket对应的输入流中的数据(从服务器发送过来的数据),并负责将这些数据程序界面上显示出来...客户端程序是一个Android应用,因此需要创建一个Android项目,这个Android应用的界面中包含两个文本框:一个用于接收用户的输入;另一个用于显示聊天信息。...-- 定义一个文本框,它用于显示来自服务器的信息 -- <TextView android:id="@+id/show" android:layout_width="match_parent...public void handleMessage(Message msg) { // 如果消息来自于子线程 if (msg.what == 0x123) { // 将读取的内容追加显示文本框中

    88920

    Android开发常见错误及技巧

    ” /> 8、让控件父容器中居中: android:layout_gravity=”center_vertical” 9、控件两端对齐: 如下代码让位于同一行的两个控件分别左对齐和右对齐: 10、android软键盘把控件往上挤的解决办法:   键盘区域外才是屏幕的边缘,定义布局文件时使用:android:gravity=”bottom”的话就会被挤到上部!   ...解决办法:   在此工程的androidMainfest.xml文件中对应的Activity中写入 android:windowSoftInputMode=”adjustPan”   或者配置文件中把布局文件的大小写死...更简单,三步: 1.打开终端 2.连接: telnet localhost 5554(5554是你打开模拟器后上面显示的数字) 3.命令:gsm call 15555218135 look!...是不是模拟器上显示来电了?接听/挂断和实体手机一样。

    49420

    Android适配全面总结(一)----屏幕适配

    下面给一个实例说明,让你更能明白这几个单位: 看下图你可以知道:为什么使用了dp作为单位,两个手机分辨率也是一样的,可是按钮显示的宽度还是不一样? ?...图片资源适配 使得图片资源不同屏幕密度上显示相同的像素效果。   实际开发中一个按钮的背景图片必须能够随着按钮大小的改变而改变。...有下面一种场景: RelativeLayout布局里面,水平方向上放置两个按钮,一个是150dp左对齐,另外一个是200dp右对齐。屏幕总宽度为360dp的Nexus5上中间有10dp的间隙。...但同样地设置Nexus S(屏幕宽度是320dp),会发现,两个按钮会重叠,因为320dp<200+150dp。 如图: ? Nexus5 效果 ?...对Android工程文件的apk包变的很大 稍微优化一下:有没有一种方法,保证屏幕密度适配,可以最小占用设计资源,使得apk包不变大(只使用一套分辨率的图片资源)?

    2.1K40

    Android 应用打造精良的 Chrome OS 使用体验

    随着人们越来越多地屏幕设备或者多型态设备上使用应用,开发者们的作品也得以吸引大量全新的用户。 Android 支持各种各样的大屏幕设备,包括平板电脑、可折叠设备、Chrome OS 笔记本等等。...如果您已经使用 SwipeRefreshLayout,Chrome OS 可以确保布局能响应刷新按钮事件。...Reply 适配多屏幕尺寸: material.io/design/mate… △ Reply 屏幕尺寸不同时会采用不同的导航模式 多屏幕 当用户使用多个显示器时,两个屏幕之间通常会存在像素密度差异。...Play files Chrome OS 文件管理器 Play files 文件夹里可以显示 Android 的 /sdcard 文件夹,从而让用户可以通过 Chrome 容器读写 Android 文件...您的 Android 应用有没有支持更大、更多样的屏幕尺寸、更多种类的设备?有没有为它们提供高完成度的使用体验?如果您在界面和交互适配上有任何疑问或者想法,欢迎评论区和我们分享。

    33410
    领券