![[android] 界面切换的核心方法,第1张 [android] 界面切换的核心方法,第1张](/aiimages/%5Bandroid%5D+%E7%95%8C%E9%9D%A2%E5%88%87%E6%8D%A2%E7%9A%84%E6%A0%B8%E5%BF%83%E6%96%B9%E6%B3%95.png)
根据效果图拆分界面
主体部分
VIEw ==> VIEwGroup ==> relativeLayout,主体部分使用relativeLayout作为占位
VIEw和VIEwGroup的区别:VIEwGroup有特有的addVIEw()和removeVIEw()方法,relativeLayout添加进来VIEw之后,后一个会覆盖住前一个VIEw;linearLayout添加进VIEw之后,会顺序排放,不适合
设计原理:
树形结构的数据处理,遵循组合设计模式
简单的界面切换
找到主体部分的relativeLayout对象,添加进来VIEw对象
两秒后切换第二个界面,利用Handler发送延迟消息模拟切换
relativeLayout对象,添加进来第二个VIEw对象
问题:
清理掉之前界面切换动画切换页面的通用化处理使用按钮点击切换
MainActivity.java
private Handler handler=new Handler(){ @OverrIDe public voID handleMessage(Message msg) { loadMemberVIEw(); } }; /** * 初始化主体 */ initMIDdle() { mainContainer=(relativeLayout) findVIEwByID(R.ID.il_main); loadLoginVIEw(); handler.sendEmptyMessageDelayed(1,2000); } * 加载登陆界面 private loadLoginVIEw() { VIEw child=new IndexVIEw(this).getLoginVIEw(); mainContainer.addVIEw(child); } * 加载会员界面 loadMemberVIEw() { VIEw child=).getMemberVIEw(); mainContainer.removeAllVIEws(); mainContainer.addVIEw(child); }
IndexVIEw.java
package com.tsh.lottery.vIEws;import androID.content.Context; androID.vIEw.VIEw; androID.Widget.TextVIEw; * 界面 * @author taoshihan * */class IndexVIEw { private Context context; public IndexVIEw(Context context) { this.context = context; } * 获取登陆界面 * @return VIEw getLoginVIEw() { TextVIEw tv= TextVIEw(context); tv.setText("我是登陆界面"); return tv; } * 获取会员界面 * VIEw getMemberVIEw() { TextVIEw tv= TextVIEw(context); tv.setText("我是会员界面" tv; }}
总结
以上是内存溢出为你收集整理的[android] 界面切换的核心方法全部内容,希望文章能够帮你解决[android] 界面切换的核心方法所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)