1 滚动条
滚动视图ScrollView是FrameLayout的子类。默认情况下滚动条不显示,拖动后显示,停止拖动后滚动条消失。 垂直滚动条:ScrollView 水平滚动条:HorizontalScrollView 两中方式添加滚动视图: 1 xml布局文件
<ScrollView
android:id="@id/scrollView"
android:layout_width="match_parent"
android:layout_height="wrap_parent" >
<!-- 要添加滚动条的组件 -->
</ScrollView>
2 代码 (1)new ScrollView() (2)将需要添加滚动条的组件通过addView()添加到滚动视图中 (3)将滚动视图添加到布局管理器中
ScrollView:实现垂直滚动条 MainActivity.java
public class MainActivity extends AppCompatActivity {
LinearLayout linearLayout, linearLayout2;
ScrollView scrollView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
linearLayout = (LinearLayout) findViewById(R.id.ll);
linearLayout2 = new LinearLayout(MainActivity.this);
// 设置为纵向排列
linearLayout2.setOrientation(LinearLayout.VERTICAL);
scrollView = new ScrollView(MainActivity.this);
// 默认布局中添加滚动视图组件
linearLayout.addView(scrollView);
// 滚动视图组件中添加新建布局
scrollView.addView(linearLayout2);
TextView textView = new TextView(MainActivity.this);
textView.setText(R.string.cidian);
// 新建布局中添加TextView组件
linearLayout2.addView(textView);
}
}
https://github.com/hanyuhang-hz/android-demos
2 选项卡
选项卡用于实现一个多标签页的用户界面。使用选项卡,按照如下步骤实现: (1)在布局文件中添加实现选项卡所需的TabHost,LinearLayout,TabWidget和FrameLayout。 (2)编写各标签页的xml布局文件。 (3)初始化TabHost组件。 (4)为TabHost添加标签页。
TabHost:实现选项卡 MainActivity.java
public class MainActivity extends AppCompatActivity {
private TabHost tabHost;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
tabHost = (TabHost) findViewById(android.R.id.tabhost);
tabHost.setup();
LayoutInflater inflater = LayoutInflater.from(this);
inflater.inflate(R.layout.tab1, tabHost.getTabContentView());
inflater.inflate(R.layout.tab2,tabHost.getTabContentView());
// 添加第一个标签页
tabHost.addTab(tabHost.newTabSpec("tab1")
.setIndicator("tab1")
.setContent(R.id.linearlayout1));
// 添加第二个标签页
tabHost.addTab(tabHost.newTabSpec("tab2")
.setIndicator("tab2")
.setContent(R.id.linearlayout2));
}
}
GitHub - hanyuhang-hz/android-demos
|