relativelayout

Android:UI界面设计基础知识总结

最后都变了- 提交于 2020-01-25 23:37:25
大年初一,这里有我。 寒假过的很快,转眼间已经荒废了两周的学习时间,现在想来仍然是惭愧不已。但时间已经流逝,我能做的就是抓紧当下,真正地投入到学习,投入到Android的学习中去。 现在学习主要是跟着视频教程边看边学,现将学习到的零星知识点总结如下:(只将学过的整理下来,以后持续补充) 首先有一些属性是通用的: id=”@+id/name” 创建一个 id 引用时:”@id/name” orientation 水平方向或垂直方向 margin :外边距 padding :内边距 gravity:位置管理 一、布局管理 Android SDK 定义了多种布局方式以方便用户设计 UI。各种布局方式均为 ViewGroup 类的子类。 主要学习的是两种最常用的布局,是线性布局(LinearLayout)和相对布局(RelativeLayout)。 1、线性布局(LinearLayout) LinearLayout 又称线性布局,该布局应该是 Android 视图设计中最经常使用的布局。该布局可以使放入其中的组件以水平方式或者垂直方式整齐排列,通过 android:orientation 属性指定具体的排列方式,通过 weight 属性设置每个组件在布局中所占的比重。 其中weight属性需要特别注意:weight代表的是权值,但此权值的分配是指剩余的空间

NullPointerException when accessing RelativeLayout from a custom view

别等时光非礼了梦想. 提交于 2020-01-24 12:42:07
问题 I am relatively new to Android and am completely stuck on how to access my programmatically-defined Relative Layout (defined in a fragment) in my custom View. In the fragment, this is what I have: ... @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View view = inflater.inflate(R.layout.fragment1, container,false); RelativeLayout rl1 = new RelativeLayout(view.getContext()); TextView tView1 = new TextView(view.getContext()); tView1

Google Developing for Android 三 - Performance最佳实践

只谈情不闲聊 提交于 2020-01-24 04:33:34
Google Developing for Android 三 - Performance最佳实践 发表于 2015-06-07 | 分类于 Android最佳实践 原文 Developing for Android, III:The Rules: Performance 在Android中,性能和内存的关系很密切,因为系统的整体内存大小会影响所有进程的性能,因为垃圾回收器会对运行期间的性能产生很大的影响。下面的重点是运行期间的性能问题而不是内存。 避免在动画和交互期间繁重的操作 正如在第一篇文章中提到过的,在UI Thread做繁重的操作会影响到渲染的处理。同样会导致动画的问题,因为它依赖于每一帧的渲染。这就意味着在动画期间避免在UI进行繁重的操作就更加重要。以下是一些可以避免的常见情况: Layout Measurement 和 layout是比较繁重的操作,view的层级越复杂,操作就会越繁重。Measurement和layout是在UI Thred发发生的。因此当系统需要运行一个动画的时候紧接着还需进行layout,而它们都是在同一个线程,因此动画的流畅度可能就会受到影响。 假设你的动画在13ms内就可以完成所有的渲染,在16帧率之内。然后某一请求导致了layout,花费了5ms的时间。该layout在下一帧绘制前会发生,那么总的绘制时间就会达到18ms

Access view of included xml layout

那年仲夏 提交于 2020-01-23 17:53:27
问题 I need to access the view present in a.xml layout included in another b.xml layout. For example, This is a.xml <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" > <Button android:id="@+id/xyz" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="XYZ" /> </RelativeLayout> And, in b.xml <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"

create and set margin programmatic for relative layout android

你离开我真会死。 提交于 2020-01-23 17:13:32
问题 Hi I am developing android application in which I am creating relative layout programmatic and tried to set margin for that and Added it into linear layout which have orientation linear. So here is my code: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@color/screen_background" tools:context=".ChooseChannelsFragment" >

position view in relativelayout runtime

僤鯓⒐⒋嵵緔 提交于 2020-01-21 19:08:14
问题 i want to add a view to a relativelayout. this view must be added to a specified position. i have this: int x = ...; int y = ...; button.setOnTouchListener(new OnTouchListener() { public boolean onTouch(View v, MotionEvent event) { int x = (int) event.getRawX(); int y = (int) event.getRawY(); v.layout(x, y, x + v.getWidth(), y + v.getHeight()); return true; } }); relativelayout.addView(button); button.layout(x, y, x + button.getWidth(), y + button.getHeight()); the ontouchlistener works great

position view in relativelayout runtime

Deadly 提交于 2020-01-21 19:00:24
问题 i want to add a view to a relativelayout. this view must be added to a specified position. i have this: int x = ...; int y = ...; button.setOnTouchListener(new OnTouchListener() { public boolean onTouch(View v, MotionEvent event) { int x = (int) event.getRawX(); int y = (int) event.getRawY(); v.layout(x, y, x + v.getWidth(), y + v.getHeight()); return true; } }); relativelayout.addView(button); button.layout(x, y, x + button.getWidth(), y + button.getHeight()); the ontouchlistener works great

Android Banner轮播控件

半世苍凉 提交于 2020-01-19 01:08:40
Android轮播控件 ViewPager无限轮播功能。可以自定义indicator,需自定义实现 Indicator 接口,内置了圆形的IndicatorView,支持三种动画切换。 无缝衔接 MagicIndicator 大神的Indicator,打造花样Indicator,集成使用请参考Sample。 支持一屏三页 支持魅族效果 支持自定义Indicator 支持自定义view 支持数据刷新 解决下拉刷新等滑动冲突问题,如嵌套SwipeRefreshLayout 解决多次重复回调onPageSelected问题 良好的代码封装,更多优化请参考代码实现。 项目地址 banner banner banner 效果图 描述 图片 基本使用的功能,请下载Sample体验 Indicator效果图 1 2 Indicator查看simple代码 描述 普通样式 两边缩放 魅族样式 一屏三页 使用步骤 Step 1.依赖banner Gradle dependencies{ implementation 'com.waitou:banner:3.0.4' //最新版本 } 或者引用本地lib compile project(':banner') Step 2.xml < com.to.aboomy.banner.Banner android: id = " @+id/banner "

安卓开发记录(3)---仿滴滴做一个点击按钮,弹出侧边菜单

為{幸葍}努か 提交于 2020-01-17 23:53:40
前言: 制作一个类似于滴滴点击左上角头像,弹出一个侧边菜单其实特别简单。而且不需要导入任何包,直接复制几行代码即可。如果您想尝试一下,请自行new一个模板叫:Navigation Drawer Activity。自行复制代码导入项目。 1.纯净版demo 一定要看清楚使用的是v4包的项目还是AndroidX的项目,因为他们所对应的xml tag不一样。请按照自己项目,修改对应tag < ! -- v4项目头尾文件 < android . support . v4 . widget . DrawerLayout < / android . support . v4 . widget . DrawerLayout > -- > < ! -- Androidx项目头尾文件 < androidx . drawerlayout . widget . DrawerLayout < / androidx . drawerlayout . widget . DrawerLayout > -- > xml: < ? xml version = "1.0" encoding = "utf-8" ? > < android . support . v4 . widget . DrawerLayout xmlns : android = "http://schemas.android.com/apk

Android: Position by percentage?

社会主义新天地 提交于 2020-01-15 12:27:07
问题 I have a UI Design from my designer, and it exists of a background map with several buttons on it, positioned non-linear all over the map. Currently I position them in a RelativeLayout that is as large as the map, and use margin-left and margin-top etc in dip . This works ok, but I also need to account for users with very small screens, that cause the map to scale down. My relative layout scales with it, but the margin values ofcourse not. So I am wondering, how should I do this? I would