续上

FrameLayout:框架布局

先看效果:

这是只设置Layout布局管理器中的文件的效果图

直接通过代码动态生成的效果图

Layout中的xml文件

        
  1. <FrameLayoutxmlns:android="http://schemas.android.com/apk/res/android"
  2. android:layout_width="fill_parent"
  3. android:layout_height="fill_parent"
  4. >
  5. <ImageView
  6. android:id="@+id/imageview"
  7. android:layout_width="wrap_content"
  8. android:layout_height="wrap_content"
  9. android:src="@drawable/cocos2d"/>
  10. <TextView
  11. android:id="@+id/textview"
  12. android:layout_width="wrap_content"
  13. android:layout_height="wrap_content"
  14. android:text="@string/hello_world"
  15. android:textSize="30dp"/>
  16. <Button
  17. android:id="@+id/button"
  18. android:layout_width="wrap_content"
  19. android:layout_height="wrap_content"
  20. android:text="Click"
  21. android:textSize="30dp"/>
  22. </FrameLayout>

通过代码动态生成的,这种只设置Activaty.java文件

        
  1. packagecom.cheng.framelayoutproject;
  2. importandroid.os.Bundle;
  3. importandroid.app.Activity;
  4. importandroid.graphics.Color;
  5. importandroid.view.Menu;
  6. importandroid.view.ViewGroup;
  7. importandroid.widget.Button;
  8. importandroid.widget.FrameLayout;
  9. importandroid.widget.ImageView;
  10. importandroid.widget.TextView;
  11. publicclassMainActivityextendsActivity{
  12. privateTextViewmTextView;
  13. privateImageViewmImageView;
  14. privateButtonmButton;
  15. @Override
  16. protectedvoidonCreate(BundlesavedInstanceState){
  17. super.onCreate(savedInstanceState);
  18. //定义FrameLayout布局管理器
  19. FrameLayoutmFrameLayout=newFrameLayout(MainActivity.this);
  20. FrameLayout.LayoutParamsfParams=newFrameLayout.LayoutParams(
  21. ViewGroup.LayoutParams.FILL_PARENT,
  22. ViewGroup.LayoutParams.FILL_PARENT);
  23. //定义三个组件
  24. mImageView=newImageView(MainActivity.this);
  25. mButton=newButton(MainActivity.this);
  26. mTextView=newTextView(MainActivity.this);
  27. //定义组件的布局参数
  28. FrameLayout.LayoutParamsviewpParams=newFrameLayout.LayoutParams(
  29. ViewGroup.LayoutParams.WRAP_CONTENT
  30. ,ViewGroup.LayoutParams.WRAP_CONTENT);
  31. //设置ImageView
  32. mImageView.setImageResource(R.drawable.cocos2d);
  33. //设置Button
  34. mButton.setBackgroundColor(Color.RED);
  35. mButton.setText("Click");
  36. mButton.setTextSize(25);
  37. //设置TextView
  38. mTextView.setText("FrameLayoutTest");
  39. mTextView.setTextSize(25);
  40. //向布局管理器重添加组件
  41. mFrameLayout.addView(mImageView,viewpParams);
  42. mFrameLayout.addView(mButton,viewpParams);
  43. mFrameLayout.addView(mTextView,viewpParams);
  44. //添加布局管理器
  45. super.setContentView(mFrameLayout,fParams);
  46. }
  47. @Override
  48. publicbooleanonCreateOptionsMenu(Menumenu){
  49. //Inflatethemenu;thisaddsitemstotheactionbarifitispresent.
  50. getMenuInflater().inflate(R.menu.main,menu);
  51. returntrue;
  52. }
  53. }

ok,FrameLayout布局和LinearLayout布局基本上差不多。

更多相关文章

  1. 【Android】Activity之间传递信息
  2. Android基于ViewPager+Fragment实现左右滑屏效果的方法
  3. android 自定义带进度值的圆形进度条
  4. 最近阶段工作相关总结,微信支付/应用商店/FileDownLoader/编码转
  5. Android(安卓)Studio学习路程(6)
  6. UI布局之selector layer-list
  7. 日期控件Android(安卓)自定义日历控件
  8. android自定义TextView(一)
  9. Android(安卓)自定义view仿微信相机单击拍照长按录视频按钮

随机推荐

  1. Android风格设计(style)
  2. Android中的Menu点滴记录
  3. 2017 年 Android(安卓)领域大事件回顾
  4. 杂谈:2012年Android的发展状况
  5. Android源码 半小时下完Android系统源码
  6. android:shape的使用
  7. 下一代Android深度前瞻 第18级API功能揭
  8. 如何学习android高级编程
  9. 学习android第一步-软件安装及环境配置
  10. OMS:拥有Android血统的智能操作系统王