Android 控制UI界面的方法

柔情只为你懂 2023-07-02 11:27 84阅读 0赞

控制UI界面的方法

4种控制UI界面的方法

  1. 使用XML布局文件
  2. Java代码
  3. 使用XML和Java代码混合
  4. 开发自定义的View

最推荐方法一。

使用XML布局文件控制UI界面

好处:把布局代码写在XML布局文件中,与逻辑结构的Java代码分离开

步骤:

  1. 在Android应用的res/layout的目录下编写XML布局文件,注意将activity_main的第二行RelativeLayout改写FrameLayout。

Framelayout框架布局,层叠式,有点像堆栈,先进在底层,会被后进的覆盖。
RelativeLayout相对布局,控件的位置通过各个控件之间的相对距离来确定。
GridLayout为网格布局管理器。

  1. 在Activity中使用Java代码显示XML文件中布局的内容

    setContentView(R.layout.activity_main);//activity_main为布局文件的名称,注意不用写扩展名.xml。

在Java代码中控制UI界面

  1. package com.mingrisoft;
  2. import android.app.AlertDialog;
  3. import android.content.DialogInterface;
  4. import android.graphics.Color;
  5. import android.support.v7.app.ActionBarActivity;
  6. import android.os.Bundle;
  7. import android.util.TypedValue;
  8. import android.view.Gravity;
  9. import android.view.View;
  10. import android.view.ViewGroup;
  11. import android.widget.FrameLayout;
  12. import android.widget.TextView;
  13. import android.util.Log;
  14. public class MainActivity extends ActionBarActivity {
  15. @Override
  16. protected void onCreate(Bundle savedInstanceState) {
  17. super.onCreate(savedInstanceState);
  18. FrameLayout frameLayout=new FrameLayout(this);
  19. frameLayout.setBackgroundResource(R.mipmap.bg);
  20. setContentView(frameLayout);
  21. TextView text1=new TextView(this);
  22. text1.setText("开始游戏");
  23. text1.setTextSize(TypedValue.COMPLEX_UNIT_SP, 18);
  24. text1.setTextColor(Color.rgb(17, 85, 114));
  25. FrameLayout.LayoutParams params=new FrameLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT,ViewGroup.LayoutParams.WRAP_CONTENT);
  26. params.gravity= Gravity.CENTER;
  27. text1.setLayoutParams(params);
  28. text1.setOnClickListener(new View.OnClickListener() {
  29. @Override
  30. public void onClick(View view) {
  31. new AlertDialog.Builder(MainActivity.this).setTitle("系统提示")
  32. .setMessage("游戏有风险,进入需谨慎,真的要进入吗?")
  33. .setPositiveButton("确定",
  34. new DialogInterface.OnClickListener() {
  35. @Override
  36. public void onClick(DialogInterface dialogInterface, int i) {
  37. Log.i("桌面台球", "进入游戏");
  38. }
  39. }).setNegativeButton("退出", new DialogInterface.OnClickListener() {
  40. @Override
  41. public void onClick(DialogInterface dialogInterface, int i) {
  42. Log.i("桌面台球", "退出游戏");
  43. finish();
  44. }
  45. }).show();
  46. }
  47. });
  48. frameLayout.addView(text1);
  49. }
  50. }

使用XML和Java代码混合控制UI界面,重点!

把布局的代码、变化不大的组件代码放入XML文件,复杂组件代码放在Java文件中。

开发自定义的View

发表评论

表情:
评论列表 (有 0 条评论,84人围观)

还没有评论,来说两句吧...

相关阅读