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

如何使用FrameLayout将Imageview置于屏幕中心?(用java代码)

要使用FrameLayout将ImageView置于屏幕中心,您可以使用以下Java代码:

代码语言:java
复制
import android.app.Activity;
import android.os.Bundle;
import android.widget.FrameLayout;
import android.widget.ImageView;

public class MainActivity extends Activity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        // 创建一个FrameLayout
        FrameLayout frameLayout = new FrameLayout(this);
        frameLayout.setLayoutParams(new FrameLayout.LayoutParams(FrameLayout.LayoutParams.MATCH_PARENT, FrameLayout.LayoutParams.MATCH_PARENT));

        // 创建一个ImageView
        ImageView imageView = new ImageView(this);
        imageView.setImageResource(R.drawable.your_image); // 替换为您的图片资源
        imageView.setLayoutParams(new FrameLayout.LayoutParams(FrameLayout.LayoutParams.WRAP_CONTENT, FrameLayout.LayoutParams.WRAP_CONTENT));

        // 将ImageView置于屏幕中心
        imageView.setTranslationX(frameLayout.getWidth() / 2 - imageView.getWidth() / 2);
        imageView.setTranslationY(frameLayout.getHeight() / 2 - imageView.getHeight() / 2);

        // 将ImageView添加到FrameLayout中
        frameLayout.addView(imageView);

        // 设置FrameLayout为主视图
        setContentView(frameLayout);
    }
}

这段代码首先创建了一个FrameLayout,然后创建了一个ImageView,并将其添加到FrameLayout中。接着,使用setTranslationXsetTranslationY方法将ImageView置于屏幕中心。最后,将FrameLayout设置为主视图。

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

相关·内容

【Android从零单排系列三十三】《Android布局介绍——FrameLayout

FrameLayout使用方法 1.在XML布局文件中定义FrameLayout: <FrameLayout xmlns:android="http://schemas.android.com...4.在代码中操作FrameLayout和子视图: 在代码中可以通过findViewById()方法获取FrameLayout和子视图的引用,并进行相应的操作,例如设置可见性、更改位置、监听点击事件等 FrameLayout...bringChildToFront(View child):指定的子视图置于顶层。 setForeground(Drawable drawable):设置前景视图。...四 FrameLayout简单案例 下面是一个简单的FrameLayout案例,展示了如何FrameLayout中添加和切换不同的子视图: <FrameLayout xmlns:android...(textView); 上述代码演示了如何使用bringChildToFront()方法指定的子视图置于顶层,从而实现在FrameLayout中切换不同的子视图。

36220

Android开发中的全屏背景显示方案

一方面,这可以给用户留下更深刻的使用体验,从而产生一定品牌效应;另一方面,也给应用的启动初始化留下了充裕的时间,避免因为启动时间过长而给用户留下不良的印象。因此,全屏显示在手机应用中得到了广泛的应用。...此时,还有一点遗憾,status Bar还是没有隐藏掉,因此还要调用方法Status Bar隐藏掉: requestWindowFeature(Window.FEATURE_NO_TITLE); getWindow...具体说来就是ImageView作为FrameLayout的第一个子视图,基于FrameLayout的属性,后面添加的子视图都将叠加到第一个子视图之上,间接地实现了全图片视图背景。 1 16 17 在Java代码中还是一样设置: 1 requestWindowFeature(Window.FEATURE_NO_TITLE); 2 getWindow(...方案三、使用Java代码动态加载图片设置全屏背景。这种方案的原理是,根据显示屏幕的大小对图片进行缩放,从而对屏幕尺寸进行适配。

2.6K50

Android 列表视频的全屏、自动小窗口优化实践

鉴于之前的《Android 实现视屏播放器、边播边缓存功能、外加铲屎(IJKPlayer)》好像还挺多人关注的,文中一些地方因为篇幅(就是懒)问题一笔带过,这篇就拓扑聊一聊其中列表全屏,还有播放中的视频滑出屏幕小窗口播放的实现...保存当前的状态栏、标题栏信息和列表中在屏幕位置的信息,用于恢复到原本的状态。 创建一个黑色背景的FrameLayout,充满屏幕用来承载全屏播放器F,这样全屏播放器F可以在其中执行动画效果。...frameLayout.addView(gsyVideoPlayer, lp); vp.addView(frameLayout, lpParent); //播放器跳转为充满居中...imageView = new ImageView(context); imageView.setScaleType(ImageView.ScaleType.CENTER_CROP); imageView.setImageResource...(R.mipmap.xxx1); //列表的位置,封面,列表的TAG,列表是的父布局,播放按键传入进去 listVideoUtil.addVideoPlayer(position, imageView

4.6K50

Android 仿微信发动态九宫格拖拽、删除功能

1、完美1比1 仿照微信仿微信发动态 九宫格拖拽、删除 暴力拖拽ui有点问题,不影响使用,资源文件自己找个+号 2、微信发动态拖拽bug 当选择完图片,长按图片拖拽过程中按下屏幕home键盘,再次进入这时候就不能点击输入文字...,点击输入文字的时候会触发选择相册事件 3、拖拽事件的basequickadapter implementation 'com.android.support:recyclerview-v7:28.0.0...frameLayout= findViewById(R.id.frameLayout); nineGridChooseImage.init(frameLayout); int statusBarHeight...; import java.util.List; import top.antaikeji.base.R; import top.antaikeji.foundation.utils.DisplayUtil...ObjectAnimator.ofFloat(mBottomView, "translationY", 0) .setDuration(200); animator.start(); } /** * 底部移除屏幕外部

1.4K31

【译】Activity分割动画如何使用我的动画##

对于低内存或者大屏幕的设备来说,可能是很大的开销。如果你依然选择使用,请小心,并且不要过度使用。...这两个Imageview直接添加到activity所在的Window上。这样做不仅可以保证Imageview能够处在即将被填充的布局之上,而且还可以灵活控制每一个Imageview屏幕上的位置。...Imageview移出屏幕,不同的只是方向而已。...我使用硬件加速(了解更多有关硬件加速动画,请阅读我最新发布的blog)并且在动画结束或者取消后,做了一些清理操作(如,移除硬件图层,把Imageview从Window窗口移除等等) 如何使用我的动画##...我曾反复思考,在尽量不限制开发者的情况下,如何最简单便捷的使用它。

1.4K20

Android 自定义 HorizontalScrollView 打造多图片OOM 的横向滑动效果(实例代码)

自从Gallery被谷歌废弃以后,Google推荐使用ViewPager和HorizontalScrollView来实现Gallery的效果。...效果还是不错的~如果只需要简单展示几张图片,直接就可以了。...下面准备进入正题,HorizontalScrollView不管里面多少View都是不会回收的,当达到一定量的时候会发生OOM,下面介绍如何改写HorizontalScollView实现文章开始所说的效果...2、自定义HorizontalScrollView 思想: 1、首先根据屏幕的大小和Item的大小,计算可以一个屏幕最多可以加载多少个Item,然后加载该数量Item。...(实例代码),希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。

1.8K20

仿支付宝手势密码

正上方的提示区域,一个类(LockIndicator.java)来实现,自定义view来绘制9个提示图标; 2....手势密码绘制区域,一个类(GestureContentView.java)来实现,它继承自ViewGroup里面, 添加9个ImageView来表示图标, 在onLayout()方法中设置它们的位置;...手势路径绘制, 一个类(GestureDrawline.java)来实现,复写onTouchEvent()方法,在这个方法里面监听TouchEvent事件: ACTION_DOWN、ACTION_MOVE...、ACTION_UP事件,来绘制手势连接不同点之间的路径; 4. 9个点的对象,一个类(GesturePoint.java)来实现,保存它的位置、状态、背景图片等相关信息; 5....三、代码实现步骤: 1.要用一个类来表示这9个点中的第一个点。里面保留有当前点的上下左右的各个位置等属性 2.自定义GroupView,用来装9个点,9个点的显示是通过ImageView

1.6K70

android使用ViewPager组件实现app引导查看页面

下面我们来实现这个功能.ViewPager这个组件与ListView和RecyclerView在使用上有很高的相似处,所以你如果学习过以上两种列表滚动控件,可以基于它们帮助你理解ViewPager的使用...实现步骤: 1.在左右滑动页面的界面中,通常在屏幕下方都会有一个小圆点,我们需要给这些小圆点的实现准备一些东西。...(图片有一些要求,为了自适应各自尺寸屏幕(平板暂时不考虑),请选择尽可能长的图片,并且重点信息在图片的上面,次要信息在下方,我们在自适应屏幕的时候会使用不显示图片下方的缩略方式,所以显示的时候以图片上半部分为核心...return list.get(position); } } 4.创建一个ViewPager的显示活动类(1.活动类里的xml最好使用帧布局FrameLayout,可以让其他控件显示在ViewPager...布局到ViewPager: 实例化一个ImageView布局,并且通过for数组里的图片ID导入到ImageView布局里,在设置ImageView的相关参数。

88010

Volley网络连接

二、特点 异步任务下载图片的操作存在几个问题 1、  代码量大且繁琐 2、  ListView滚动太快,可能导致下载的图片无法正常显示 3、  可能浪费系统资源 4、  旋转屏幕可能导致再次下载 由此提出使用...Volley替代 网络操作 但是只适合简单的网络操作: 1、  json/xml文本数据 2、  图片加载 不能用于大数据的下载 和 文件的上传 三、使用前准备 找到volley文件 (sdk版本文件下...com/android/volley) volley文件内的内容(所有文件)复制到项目com.android.volley包下        删除类名带有Text 的测试java文件 四、下载文本数据的方法...31 tv_show.setText(response); 32 } 33 }, null); 34 //3、请求添加到队列中...R.drawable.ic_launcher); 45 } 46 } 47 ); 48 //3、请求添加到队列中

1.7K70

ViewFlipper实现多页面切换

1、屏幕切换指的是在同一个Activity内屏幕见的切换,最长见的情况就是在一个FrameLayout内有多个页面,比如一个系统设置页面;一个个性化设置页面。...该类继承了Framelayout类,ViewAnimator类的作用是为FrameLayout里面的View切换提供动画效果。...该类有如下几个和动画相关的函数:  setInAnimation:设置View进入屏幕时候使用的动画,该函数有两个版本,一个接受单个参数,类型为android.view.animation.Animation...setOutAnimation: 设置View退出屏幕时候使用的动画,参数setInAnimation函数一样。 showNext: 调用该函数来显示FrameLayout里面的下一个View。...代码实现: package com.tiantang.testandroid1;    import android.app.Activity;    import android.content.Context

1.4K100

Android魔术系列:一步步实现淹没、展开效果

textview而不是imageview来实现button的布局,是因为如果使用imageview,当第二阶段展开到button的两部分超出屏幕顶部和底部时,imageview区域压缩导致图片会被缩小而不是溢出...,差别如下 使用ImageView的效果 使用TextView的效果 所以我们这里使用TextView。...回到代码本身,我们通过上面的分析知道整个过程由两部分动画组成:淹没和展开。...在代码中可以看到淹没动画floodAnimation,它通过floodWrapper来动态改变animation_content的高度直至屏幕高度,这样就实现了淹没的效果。...spread_view设置成了centerInParent,而button的两个部分与spread_view关联,所以在这个动画过程中button会跟随着一起移动并始终处于animation_content中心

55320

「docker实战篇」python的docker爬虫技术-appium+python实战(18)

上次通过appium进行了,录制脚本的功能,而且还可以进行转换成python,java,js等等语言的,这次实战下,从登陆,到进入某个页面操作获取信息。...流程代码 1.点击跳过导航页面,进入登录页面 2.输入用户名和密码,点击登录 3.进入页面点击同意,点击研迅 4.模拟手势,上移 准备工作 安装【考研帮】 ?...编写代码 #!...driver.findelementbyxpath("路径").sendkeys("填入数据") 按钮点击 driver.findelementby_xpath("路径").click() 模拟手势上啦,先获取屏幕的宽高...get_size() x1 = int(l[0]0.5) y1 = int(l[1]0.75) y2 = int(l[1]*0.25) driver.swipe(x1,y1,x1,y2) PS:最后实现了如何从登陆到点击研迅

58410
领券