首页 > TAG信息列表 > layoutparams
用addView方法动态添加控件
addView能够通过按钮的监听事件在Layout中生成新的控件 一、通过按钮的监听事件生成layout布局 代码为: final RelativeLayout /*布局名称*/ = new RelativeLayout(MainActivity.this); //RelativeLayout可更改为LinearLayout 通过LayoutParams设置布局参数 RelativeLayout.Layo从 0 到 1 优雅实现沉浸式状态栏
本文将会教给大家如何从0到1优雅地实现沉浸式状态栏的效果,包括设置状态栏的颜色、状态栏透明和状态栏的文字颜色,并可以适配启动页和刘海屏等等。 1. 概述 现在市面上绝大多数APP都实现了沉浸式状态栏的效果,该效果可以极大地提升用户的使用体验。但是,APP默认的情况下只是设定一个【Android】设置Dialog
private Dialog alertDialog = new AlertDialog.Builder(context). setView(view). create();alertDialog.getWindow().setDimAmount(0f);//设置透明背景alertDialog.getWindow().setBackgroundDrawable(new ColorDrawable());//设置背景填充alertDialog.getWindow直播app源码,状态栏和导航栏设置成透明状态
直播app源码,状态栏和导航栏设置成透明状态实现的相关代码 设置页面透明,使用主题 注册activity设置主题 <style name="TranslucentNoActionBarTheme" parent="Theme.AppCompat.NoActionBar"> <item name="windowActionBar">false</item> <item naDatePicker去掉头布局的两种方法
5.0+ private void hideDatePickerHeader() { ViewGroup rootView = (ViewGroup) datePicker.getChildAt(0); if (rootView == null) { return; } View headView = rootView.getChildAt(0); if (headView == null) {Android悬浮窗的一种实现,kotlin系统入门到进阶
windowInfo.view?.setOnTouchListener(this) windowInfo.layoutParams = createLayoutParam(x, y) if (!windowInfo.hasParent().value()) { val windowManager = this.context?.getSystemService(Context.WINDOW_SERVICE) as WindowManager windowManager.addView(windowInfAndroid Path菜单的简单实现,android开发软件
mHomeparams.width = LayoutParams.WRAP_CONTENT; mHomeparams.height = LayoutParams.WRAP_CONTENT; switch (position) { case LEFT_TOP: mHomeparams.gravity = Gravity.LEFT | Gravity.TOP; for (int i = 0; i < menuResIds.length; i++) { iandroid AlertDialog 占满屏幕宽度
网上找了很多设置弹框风格的文章,但是都不能设置成我想要的效果。最后参考了他们的一些处理方式,最后解决了,顺便记录一下处理。 初始的效果是这样的,下图: /** * 所有自定义创建和显示弹窗都不可以缺这方法 */ private void createAndShowDialog() {短视频app源码,连麦时最小化出现可移动悬浮窗
短视频app源码,连麦时最小化出现可移动悬浮窗实现的相关代码 新建悬浮窗Service 新建悬浮窗Service FloatWinfowServices,因为我们使用的BindService,我们在onBind方法中初始化service中的布局 override fun onBind(intent: Intent): IBinder? { initWindow()Android悬浮窗的一种实现,实现原理分析
效果如下: 显示浮窗 原生ViewManager接口提供了向窗口添加并操纵View的方法: public interface ViewManager{ //‘向窗口添加视图’ public void addView(View view, ViewGroup.LayoutParams params); //‘更新窗口中视图’ public void updateViewLayout(View view, ViewGroJava设置TextView的属性
创建TextView TextView textView = new TextView(this); 属性: 1、设置textView的宽高 textView.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT,LayoutParams.WRAP_CONTENT)); 2、设置textView的文字 textView.setText("这是new出来的TextView"); 3、设置字体大Android Scroller简单用法,字节跳动+京东+360+网易面试题整理
mScroller.setFinalY(int newY) //设置mScroller最终停留的竖直位置,没有动画效果,直接跳到目标位置 //滚动,startX, startY为开始滚动的位置,dx,dy为滚动的偏移量, duration为完成滚动的时间 mScroller.startScroll(int startX, int startY, int dx, int dy) //Android CardView setRadius()无效问题
CardView代码中设置圆角会被设置背景覆盖,以下代码运行后cardview圆角无效: card.setBackgroundResource(R.id.image); card.setRadius(50); 应改成: //card.setBackgroundResource(R.id.image); card.setRadius(50); ImageView img = new ImageView(getContext()); LinearLayouDialog/PopupWindow/Toast 到底该怎么选
前言 显示页面除了Activity,使用最多的可能就是Dialog、PopupWindow、Toast了。这三者有相似之处也有不一样的地方,本篇文章旨在厘清三者关系,阐明各自的优缺点,并探讨哪种场合使用它们。 本篇文章涉及到WindowManager相关知识,如有需要请移步:Window/WindowManager 不可不知之事CoordinateLayout的实现原理
引言 CoordinateLayout的主要用法: 1、作为顶层应用的装饰或者chrome布局 2、作为一个能响应特定的一个或多个子视图交互的容器 也就是说,CoordinateLayout本身不具备布局的能力,它只是作为一个将Behavior和子View绑定的容器,将收到的事件几乎原封不动的分发给子View对应的Behavior。Android 自定义透明的Activity做为提示框
一.在values目录中创建color.xml <?xml version="1.0" encoding="utf-8"?> <resources> <color name="transparent">#0000</color> <!-- Color value must be #rgb, #argb, #rrggbb, or #aarrggbb --> </resources&gAndroid 悬浮窗口
WindowManager wm = (WindowManager)getApplicationContext().getSystemService(Context.WINDOW_SERVICE); WindowManager.LayoutParams params = new WindowManager.LayoutParams(); params.type = WindowManager.LayoutParams.TYPE_SYSTEM_OVERLAY;设置应用全屏的几种方式
1. 去掉标题栏+全屏显示+导航栏半透明 public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { // todo 去掉标题栏 supportRequestWindowFeature(Window.FEATURE_NO_TITLE);Android自定义View之实现流式布局
Android自定义View之实现流式布局 运行效果 流式布局 把子控件从左到右摆放,如果一行放不下,自动放到下一行自定义布局流程 1. 自定义属性:声明,设置,解析获取自定义值 在attr.xml中声明 2. 测量:在onMeasure 方法测量自身的宽高和child的宽高 3. 布局:在onLayout方法里面根据直播带货app源码如何制作全局悬浮窗?
有些直播带货app中经常会用到一个全局可悬浮的按钮、或者窗口,今天我们就来介绍一下直播带货app源码中如何制作“可跟随手指拖动的全局悬浮窗”。 一、自定义一个跟随手指滑动的View 在直播带货app源码中自定义一个跟随手指滑动的View很简单,本篇的教程中只支持简单的悬浮拖动,后期一手遮天 Android - view(布局类): setContentView() 和 addContentView()
项目地址 https://github.com/webabcd/AndroidDemo 作者 webabcd 一手遮天 Android - view(布局类): setContentView() 和 addContentView() 示例如下: /view/layout/ContentViewDemo1.java /** * 演示 setContentView() 和 addContentView() 的用法 */ package com.webabcd.anAndroid 可拖拽ImageView
DragButton 可移动的VIew import android.content.Context; import android.support.v7.widget.AppCompatTextView; import android.util.AttributeSet; import android.view.MotionEvent; import android.view.ViewGroup; /** * 可拖拽的view */ public class DragButton exte安卓学习笔记-RecyclerView使用Glide加载网络图片瀑布流失效的情况以及item间距设置
瀑布流失效问题 RecycleView瀑布流用Glide加载网络图片会导致瀑布流失效,因为不知道网络加载的图片具体高度是多少;这时候我们可以手动设置图片高度,随机值,这样瀑布流就能正常使用了 @Override public void onBindViewHolder(@NonNull ViewHolder holder, int position) {android: 分享一个带多行选择功能的RadioGroup
分享一个带多行选择功能的RadioGroup, Github上看到的。 android 的RadioGroup有两个缺陷: 1. 不支持多行选择什么意思呢?比如要实现下图这样的效果: 上面的10组选项其实都只能单选,但是要用RadioGroup去做的话,最少要定义3个RadioGroup, 原生的RadioGroup只支持单向排列,要么是横向,要Android 自定义控件基础:MeasureSpec
前言 MeasureSpec 很大程度上决定了一个View尺寸规格,是因为这个过程还受父容器的影响,因为父容器影响View 的MeasureSpec的创建过程。在测量过程中,系统会将View的LayoutParams 根据父容器所施加的规则转换成对应的MeasureSpec,然后再根据这个MeasureSpec测量出View 的最终宽/