温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

如何自定义Android 界面

发布时间:2021-11-11 16:14:00 来源:亿速云 阅读:138 作者:柒染 栏目:移动开发

如何自定义Android 界面,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

如果你想直接转到你自己定义的Android 界面,你可以在接收者的IntentFilter中加入一个自定义的Action值,他们都是使用了设计模式的观察者模式,仅供大家学习参考哦。

一种是用图形化的方式来编写 布局Layout,这些布局被保存在XML文件中,会编译成资源,被程序中Activity来加载(setContentView()), 再通过findViewById方式来获得每一个界面组件的引用进行操作。

对于大多数人来说,喜欢最直观的方式,既代码中动态生成的方式。我们就先从这里说起,至于可视化编程及布局资源的方式以后专门来讲述。

一,布局管理(Layout)
每一个界面组件都是View的子类,都可以单独占用一个屏幕,但是真正的有用的界面都是这些组件的组合,在Android 界面中都是用各种Layout来进行布局管理,这与传统的J2SE中的一些AWT,SWING界面方式基本相同,这里就不多说。

二,一个单独的界面元素:

public class HelloActivity extends Activity {      /** Called when the activity is first created. */      @Override      public void onCreate(Bundle savedInstanceState) {          super.onCreate(savedInstanceState);          TextView tv = new TextView(this);          tv.setText("Hello, World!");          this.setContentView(tv);               }  }  这里并没有用到Layout,这就是单独的组件方式。也可以改为:  super.onCreate(savedInstanceState);          Button btn = new Button(this);          btn.setText("TestButton");          this.setContentView(btn);  编译运行,会有一个全屏的Button,当然这不是你想要的实用的界面.那我们就用Layout来布局          super.onCreate(savedInstanceState);          Button btn = new Button(this);          btn.setText("TestButton");          Button btn2 = new Button(this);          btn2.setText("TestButton2");          LinearLayout layout = new LinearLayout(this);          layout.setOrientation(LinearLayout.VERTICAL);          layout.addView(btn);          layout.addView(btn2);          this.setContentView(layout);

编译运行,你就可以看到了两个上下排列的按钮,当然对于布局管理器的使用,做过PC 上AWT,SWING的人都不陌生,这里就不赘述。那如何响应事件呢: 大家猜一猜?想必大家不难猜到。

在AWT中,在手机的J2ME中,都是用Listener 来处理事件响应,Android 界面也未能脱俗。这与Blackberry,Symbian中的Observer是同一个道理。都是使用了设计模式的观察者模式。下面来看一个能响应事件的例子。

步骤是:
一,生成两个Button,配置Click事件监听者为HelloActivity ,此类实现了OnClickListener接口。
二,放入布局,按布局显示两个Button
三,按下其中一个Button,生成Click事件,调用HelloActivity 的OnClick接口函数。
四,对于View参数的值,判断是哪个View(Button)。改写Activity的Titile内容。注意,可别去对比View.getId(),缺省情况下,每个组件的Id值都为-1,除非人为设定Id值,用可视化编程时,为自动为其生成一个Id值。

关于如何自定义Android 界面问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注亿速云行业资讯频道了解更多相关知识。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI