• Android中常用控件及属性


      在之前的博客为大家带来了很多关于Android和jsp的介绍,本篇将为大家带来,关于Andriod中常用控件及属性的使用方法,目的方便大家遗忘时,及时复习参考。好了废话不多讲,现在开始我们本篇内容的介绍。

      1、控制应用显示的方向:

    setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);//竖直显示效果。
    setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE);//横向显示效果。

      将上句添加在setContentView(R.layout.activity_one);下面即可。

      2、文本单行显示及文本单行输入:

    <!--     设置文本显示在一行      -->
     android:singleLine="true";

      3、TabActivity的实现方法:

      a、布局文件:

    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:paddingBottom="@dimen/activity_vertical_margin"
        android:paddingLeft="@dimen/activity_horizontal_margin"
        android:paddingRight="@dimen/activity_horizontal_margin"
        android:paddingTop="@dimen/activity_vertical_margin"
        tools:context=".Activitytwo" >
    
        <TabHost 
            android:id="@+id/bookTabHost"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            >
            <LinearLayout 
                android:id="@+id/doneBook"
                android:orientation="vertical"
                android:layout_height="wrap_content"
                android:layout_width="wrap_content"
                >
                <TextView
                    android:text="边城"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    />
                <TextView
                    android:text="围城"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    />
                <TextView
                    android:text="追风筝的人"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    />
            </LinearLayout>
            
            <LinearLayout 
                android:id="@+id/doingBook"
                android:orientation="vertical"
                android:layout_height="wrap_content"
                android:layout_width="wrap_content"
                >
                <TextView
                    android:text="倾城之恋"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    />
                <TextView
                    android:text="灿烂千阳"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    />
                <TextView
                    android:text="活着"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    />
            </LinearLayout>
            
            <LinearLayout 
                android:id="@+id/willBook"
                android:orientation="vertical"
                android:layout_height="wrap_content"
                android:layout_width="wrap_content"
                >
                <TextView
                    android:text="百年孤独"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    />
                <TextView
                    android:text="房子里的大象"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    />
                <TextView
                    android:text="忏悔"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    />
            </LinearLayout>
        </TabHost>
    
    </RelativeLayout>

      b、activity代码:

    public class Activitytwo extends TabActivity{
        public TabHost bookth = null;
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            bookth = getTabHost();
            LayoutInflater.from(this).inflate(R.layout.activity_two, bookth.getTabContentView(), true);
            bookth.addTab(bookth.newTabSpec("done").setIndicator("已读").setContent(R.id.doneBook));
            bookth.addTab(bookth.newTabSpec("doing").setIndicator("正读").setContent(R.id.doingBook));
            bookth.addTab(bookth.newTabSpec("will").setIndicator("未读").setContent(R.id.willBook));
        }  
    }

      c、效果图:

      

      值得提醒的是,目前更为推崇的方式是ViewPager+fragement

      4、文本输入提示:

      a、布局文件代码:

    <AutoCompleteTextView 
            android:id="@+id/acTextView"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:hint="请输入姓名:"
            android:textColor="#000"
            android:maxLength="10"
            />
    <MultiAutoCompleteTextView
            android:id="@+id/macTextView"
            android:layout_below="@id/acTextView"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:hint="请输入城市:"
            android:textColor="#000"
            android:maxLength="5"
            />

      b、Activity代码:

    public class Activityfive extends Activity{
        
        private AutoCompleteTextView acTextView;
        private MultiAutoCompleteTextView macTextView;
        private String [] arr = {"abc","abx","abo","bdc","bdf"};
        private String [] brr = {"ab北京","ab南京","ab东京","bb莫斯科","bb英国","bb美国"};
        
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_five);
            acTextView = (AutoCompleteTextView) findViewById(R.id.acTextView);
            macTextView = (MultiAutoCompleteTextView) findViewById(R.id.macTextView);
            ArrayAdapter<String> arrAdapt = new ArrayAdapter<String>(this, android.R.layout.simple_dropdown_item_1line, arr); 
            acTextView.setAdapter(arrAdapt);
            ArrayAdapter<String> brrAdapt = new ArrayAdapter<String>(this, android.R.layout.simple_dropdown_item_1line, brr);
            macTextView.setAdapter(brrAdapt);
            macTextView.setThreshold(1);//设置输入多少个字符开始自动匹配
            macTextView.setTokenizer(new MultiAutoCompleteTextView.CommaTokenizer());//设置分隔符
        }
        
    }

      5、发送广播:

      a、创建广播内容:

    public class Activityone extends Activity {
        final String Intent_Action = "com.android.BroadcastReceiverDemo";//广播的地址;自定义设置
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_one);
            Intent intent = new Intent(Intent_Action);
            intent.putExtra("name", "小米");//广播的内容
            Activityone.this.sendBroadcast(intent);//发送广播
        }
    }

      b、在AndroidManifest.xml中声明广播:

    <!-- 设置广播接收器 -->
            <receiver 
                android:name="cn.edu.hpu.android.activity_broadcast.MyBroadcastReceiver"
                android:enabled="true"
                >
                <intent-filter>
                    <action android:name="com.android.BroadcastReceiverDemo" />
                </intent-filter>            
            </receiver>

      c、接收广播:

    public class MyBroadcastReceiver extends BroadcastReceiver{
    
        @Override
        public void onReceive(Context context, Intent intent) {
     
                String name = intent.getStringExtra("name");//接收广播发送出来的数据
                Toast.makeText(context, " "+name, Toast.LENGTH_SHORT).show();
            
        }
    
    }

      6、获得用户网络状况:

    public class MainActivity extends Activity {
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            //获得网络连接对象
            ConnectivityManager nw = (ConnectivityManager)this.getSystemService(Context.CONNECTIVITY_SERVICE);
            NetworkInfo netinfo = nw.getActiveNetworkInfo();
            
            Toast.makeText(MainActivity.this, "当前网络"+add(netinfo.isAvailable())+","+"网络"+app(netinfo.isConnected())+","+"网络连接"+adp(netinfo.isConnected()), Toast.LENGTH_LONG).show();
        }
        
        String add(Boolean bl){
            String s = "不可用";
            if(bl==true){
                s="可用";
            }
            return s;
        }
        
        String app(Boolean bl){
            String s = "未连接";
            if(bl==true){
                s="已连接";
            }
            return s;
        }
        
        String adp(Boolean bl){
            String s = "不存在!";
            if(bl==true){
                s="存在!";
            }
            return s;
        }
        
    }

      注意:在AndroidManifest.xml文件中添加获取网络的权限:<uses-permission   android:name="android.permission.ACCESS_NETWORK_STATE"/>

      7、SharedPreferences存储:

    SharedPreferences sp = getSharedPreferences(FILE_NAME, Context.MODE_APPEND);
                    Editor editor = sp.edit();//获得编辑对象
                    editor.clear();
                    editor.putString("name", name);
                    editor.putString("password", number);
                    editor.commit();//提交内容保存

      注意:FILE_NAME是我们设置的唯一标识,方便我们进行查询和修改。

      8、SharedPreferences内容获得:

    SharedPreferences sp = getSharedPreferences(FILE_NAME, Context.MODE_PRIVATE);
                    String name1 = sp.getString("name", "");
                    String password = sp.getString("password", "");

      注意:FILE_NAME:要和我们上面设置的一致,这样才能取得上面的我们保存的内容。sp.getString("name", "");简单介绍一下,第一个参数是我们需要获得的数据存储时的标签,第二个参数是当我们获得数据不存在时,返回的内容。

       9、Toast使用:

      a、系统自带形式:

    Toast.makeText(getApplicationContext(), "系统自带提示形式", Toast.LENGTH_SHORT).show();

      b、自定义形式:

    Toast toast = new Toast(getApplicationContext());
                    toast.setGravity(Gravity.CENTER_VERTICAL, 0, 0);//设置显示的位置
                    toast.setDuration(Toast.LENGTH_LONG);//设置显示的时间
                    
                    toast.setView(getLayoutInflater().inflate(R.layout.activity_two, null));//设置自定义的视图
     
                    toast.show();

      效果图:

      

  • 相关阅读:
    Windows Server 2008 R2域控组策略设置禁用USB
    Windows Server 2008 R2组策略设置计算机配置和用户配置
    Windows Server 2008 R2父域管理员与子域管理员相互登录访问
    转载:如何处理浏览器的断网情况?
    转载:浏览器缓存库设计总结(localStorage/indexedDB)
    手写启动一个本地服务器的命令行工具
    Node.js-核心模块-zlib
    使用console.log打印公司招聘信息和字符画
    转载:准备刷 leetcode 了,才发现自己连时间复杂度都不懂
    转载:前端通信那些事儿
  • 原文地址:https://www.cnblogs.com/AndroidJotting/p/4489473.html
Copyright © 2020-2023  润新知