zoukankan      html  css  js  c++  java
  • 自定义BaseActivity

    之前在网上看到一个一种方法:

    public class BaseActivity extends Activity {  
      
        @Override  
        protected void onCreate(Bundle savedInstanceState) {  
            super.onCreate(savedInstanceState);  
            requestWindowFeature(Window.FEATURE_NO_TITLE);  
            setContentView(R.layout.base);  
        }  
      
        public void baseSetContentView(int layoutResId) {  
            LinearLayout llContent = (LinearLayout) findViewById(R.id.content);  
            LayoutInflater inflater = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);  
            View v = inflater.inflate(layoutResId, null);  
            llContent.addView(v);  
        }  
      
    }  

    经过测试,用这种方法加进去的view都是wrap_content的

    需要改成inflate.inflate(layoutResId,llContent);

        protected void onCreate(Bundle savedInstanceState) {
            // TODO Auto-generated method stub
            setTheme(R.style.MyTheme);//注意这一句的位置
            super.onCreate(savedInstanceState);
            requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);
            setContentView(R.layout.activity_basechart);
            getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.title);
            
        }
        public void baseSetContentView(int layoutResId) {  
            LinearLayout llContent = (LinearLayout) findViewById(R.id.baseContent);  
            LayoutInflater inflater = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);  
            inflater.inflate(layoutResId, llContent);  
        } 
    activity_basechart.xml

    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical" 
        android:background="#FFFFFF">
         <RelativeLayout
                android:layout_width="match_parent"
                android:layout_height="0dp"
                android:layout_margin="2dp"
                android:orientation="vertical"
                android:layout_weight="1"
                android:padding="2dp"
                android:background="@drawable/border">
               <com.github.mikephil.charting.charts.LineChart
                android:id="@+id/chart"
                android:background="@color/tp"
                android:layout_width="match_parent"
                android:layout_height="match_parent"/>
           </RelativeLayout>
        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="0dp"
            android:orientation="horizontal"
            android:id="@+id/baseContent"
            android:layout_weight="1">
        </LinearLayout>
        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="0dp"
            android:orientation="vertical"
            android:layout_weight="1">
            <android.support.v4.view.ViewPager
                android:id="@+id/baseVallery"
                android:layout_width="match_parent"
                android:layout_height="match_parent" >
            </android.support.v4.view.ViewPager>
        </LinearLayout>
    </LinearLayout>

    新建Activity继承自上面的BaseActivity

        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            baseSetContentView(R.layout.activity_monitor);
        }
     
  • 相关阅读:
    Cocos2dx 3.0 过渡篇(二十五)死不了的贪食蛇(触摸版)
    IBinder对象在进程间传递的形式(一)
    【代码实现】PHP生成各种随机验证码
    win8 metro 调用摄像头拍摄照片并将照片保存在对应的位置
    薏米红豆粥功效及做法介绍
    应用程序无法正常启动0xc0150002 解决方式
    贪心算法
    Linux 进程通信之 ——信号和信号量总结
    关于 ioctl 的 FIONREAD 參数
    google域名邮箱申请 gmail域名邮箱申请(企业应用套件)指南
  • 原文地址:https://www.cnblogs.com/maydow/p/4664576.html
Copyright © 2011-2022 走看看