LinearLayout and FrameLayout
- LinearLayout 单层线性布局,子控件不可覆盖,而以垂直或水平布局。
- FrameLayout 单帧空间垂直布局,display a singer item,but you can populate it with many items, setting one to visible while the others are invisible.只有一个子控件可见,其它均被隐藏。每个添加的子控件都被放在布局的左上角,并覆盖前一子控件的上层。
LinearLayout 做出如下效果:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="160px"
android:background="@android:color/white"
>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/hello"
/>
<com.studio.android.Chessboard android:id="@+id/snake" android:layout_width="match_parent"
android:layout_height="match_parent" tileSize="24"/>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@android:color/black"
>
</LinearLayout>
</LinearLayout>
分析:The first LinearLayout 垂直布局,所以TextView and Chessboard 垂直分布。第二个LinearLayout则位于其下。也就是两个LinearLayout不相互重叠,依次排列。
FrameLayout的布局:
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@drawable/bg"
>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<TextView
android:id="@+id/text"
android:text="@string/hello"
android:visibility="visible"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:textColor="#ff0000"
android:textSize="24sp"
/>
</RelativeLayout>
<Button
android:layout_width="50px"
android:layout_height="wrap_content"
android:text="确定"
/>
</FrameLayout>
分析:在整个的FrameLayout的布局中,上层子控件覆盖下层子控件,每个子控件都被放在左上角(0,0)位置。
分享到:
相关推荐
app经常用到底部导航栏,早前使用过RadioGroup+FrameLayout实现或者RadioGroup+ViewPager实现,现在基本使用FragmentTabHost+FrameLayout来实现,因为使用起来简单易用。...LinearLayout xmlns:and
PercentClipView :star: Cropped layouts with percentage for ...LinearLayout layout = (LinearLayout) this.findViewById(R.id.layout); layout.setClipLeft(0.50f); Reference Class FrameLayout LinearLayo
- **其他布局**:还有LinearLayout、FrameLayout等多种布局可供选择,开发者应根据具体需求选用合适的布局方式。 通过以上内容,我们不仅能够了解到Android开发的基础知识和技术要点,还能掌握具体的实践方法和技巧...
效果预览特点LinearLayout、RelativeLayout、FrameLayout支持圆角ImageView、TextView、View、Button支持圆角CircleImageView(圆形图片)支持边框(不遮挡图片)可正常设置ripple(波纹不会突破边框)使用 xml 或者...
`ViewGroup`是布局容器,如线性布局(LinearLayout)、相对布局(RelativeLayout)和帧布局(FrameLayout),它们用于组织和定位子视图。 **小部件(Widgets)** 小部件是更复杂的视图,通常具有特定的功能。比如,`...
常见的布局有线性布局(LinearLayout)、相对布局(RelativeLayout)、帧布局(FrameLayout)和约束布局(ConstraintLayout)等。 7. **Android权限**: 在AndroidManifest.xml中声明应用所需的权限,如访问网络、...
在Android中,常见的布局有线性布局(LinearLayout)、相对布局(RelativeLayout)、网格布局(GridLayout)、帧布局(FrameLayout)和约束布局(ConstraintLayout)等。 1. **线性布局**:按照垂直或水平方向将子...
此外,如果你希望实现更复杂的拖放功能,如在不同视图之间交换元素,可以使用Android的DragAndDrop API。首先,通过startDrag()方法启动拖放操作,然后实现DragEventListener监听拖放过程: ```java View....
首先需要一个布局文件,是FlameLayout组成的,里面包含了一个ViewPager和一个RelativeLayout,RelativeLayout里面是一个LinearLayout,LinearLayout里面是准备放ImageView,动态添加。 布局文件如下: 代码如下:<...
创建自定义Tabbar类时,可以继承`LinearLayout`或`FrameLayout`,然后添加`RadioButton`子视图。 ```java public class CustomTabBar extends LinearLayout { // Implement constructor, getters/setters, and ...
2. 布局管理:掌握线性布局(LinearLayout)、相对布局(RelativeLayout)、框架布局(FrameLayout)以及网格布局(GridLayout)等布局管理方式的应用,以及如何利用布局参数来实现灵活的界面设计。 3. 事件处理:...
<FrameLayout android:id="@+id/content_frame" android:layout_width="match_parent" android:layout_height="match_parent" /> <!-- 右侧抽屉 --> <LinearLayout android:id="@+id/right_drawer" android...
重写的Gallery,Gallery滑动的时候下面的点跟着动 ... import java.util.ArrayList; import android.app.Activity; import android.content.Context;... new LinearLayout.LayoutParams(LayoutParams.FILL_PARENT...
1. **布局(Layouts)**:Android提供了多种布局选项,如线性布局(LinearLayout)、相对布局(RelativeLayout)、帧布局(FrameLayout)和约束布局(ConstraintLayout)。新手开发者应熟悉这些布局,了解它们的特性...
1. **布局管理器(Layout Managers)**:Android提供多种布局方式,如线性布局(LinearLayout)、相对布局(RelativeLayout)、帧布局(FrameLayout)和网格布局(GridLayout)。理解它们各自的特性和应用场景是创建...
在XML布局文件中,`TabHost`是根元素,通常包含一个`LinearLayout`,这个`LinearLayout`有两个子元素:`TabWidget` 和 `FrameLayout`。`TabWidget` 用于显示选项卡,而 `FrameLayout` 用于承载每个选项卡对应的活动...