Android java代码布局的activity

来源:未知 责任编辑:责任编辑 发表时间:2015-03-01 01:33 点击:

知道activity总要有一个xml的布局文件相对应,但如果没有这个xml 而用Java 直 接在代码中简单实现,也就是说,这个负责布局的xml 现在我不在写他。而是直接有java帮助我们生成,有些朋友会问,有这个必要么,自己单写个java 类实现不和xml 布局是同样的功能。但实际上,很多时候我们的界面不是完全不变的,如果一个view 中出现了大量的变化,那原来的xml 也就成了鸡肋。而且一旦我们想要将写好的一个activity自己封装成JAR包,这时多余的xml 很可能就变成了累赘。为解决这个问题,自己做了一点测试。感觉效果能简单的解决这个问题,所以发出来,大家权当参考。
在一个activity中在重写的 onCreate 方法里,我们必须将布局文件指定进来 setContentView(R.layout.XXXX ); 现在我们将这个指定的xml 放弃。
java代码:
Java代码 
import android.app.Activity; 
import android.content.Context; 
import android.content.res.Resources; 
import android.graphics.Bitmap; 
import android.graphics.BitmapFactory; 
import android.graphics.drawable.BitmapDrawable; 
import android.os.Bundle; 
import android.view.View; 
import android.widget.ImageView; 
import android.widget.LinearLayout; 
import android.widget.TextView; 
 
public class IndexActivity extends Activity { 
    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
        // TODO Auto-generated method stub 
        super.onCreate(savedInstanceState); 
        newView view = newView.buildView(IndexActivity.this); 
        // 原来需要指定xml的地方,换成创建相应布局的对象 
        setContentView(view); 
        Resources res = getResources(); 
        // 指定加载的图片 
        Bitmap bmp = BitmapFactory.decodeResource(res, R.drawable.back_1); 
        BitmapDrawable bmp1 = new BitmapDrawable(bmp); 
        view.imageView.setImageDrawable(bmp1); 
    } 
 
    // 这里实验了LinearLayout布局,其他的布局暂时没做尝试,不过基本原理类似 
    static class newView extends LinearLayout { 
        private ImageView imageView; 
 
        public newView(Context c) { 
            super(c); 
            /*
             * 这里只创建了个ImageView 同理,如TextView EditText Button

发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
用户名: 验证码:点击我更换图片
最新评论 更多>>

推荐热点

  • android 屏幕保护
  • Android 完全退出程序
  • 原创:Android应用开发-Andorid歌词秀,含源码
  • 众多Android 开源项目推荐,给力工作给力学习
  • Android成长的幕后推手:工程师鲁宾
  • MIUI:10个亮点及5处不足
  • Android歌词秀1.5版
  • 自己开发计算器(4)-完成!源代码公开!
  • Android开发者指南(29) —— USB Host and Accessory
网站首页 - 友情链接 - 网站地图 - TAG标签 - RSS订阅 - 内容搜索 - 移动版 - 返回顶部
Copyright © 2008-2013 计算机技术学习交流网. 版权所有

豫ICP备11007008号-1