• 高级控件(2)


    计时器(秒表)Chronometer

    <Chronometer
       android:id="@+id/miaobiao"
     android:layout_width="wrap_content"
     android:layout_height="wrap_content"/>

     1 mychrCh.setOnChronometerTickListener(new OnChronometerTickListener(){
     2     public void onChronometerTick(Chronometer chronometer) {
     3         String time = chronometer.getText().toString().replaceAll(
     4                 "[^(\d{2}:\d{2})]", "");
     5         }
     6     });
     7     mybutton1.setOnClickListener(new OnClickListener() {
     8         public void onClick(View v) {
     9             mychrCh.start();//开始计时
    10         }
    11     });
    12     mybutton2.setOnClickListener(new OnClickListener() {
    13         public void onClick(View v) {
    14             mychrCh.stop();//停止计时
    15             tv.append(mychrCh.getText().toString()+"
    ");//追加到显示框记录时间
    16             mychrCh.setBase(SystemClock.elapsedRealtime());
    17         }
    18     });
    19 vibrator = (Vibrator)getApplication().getSystemService(Service.VIBRATOR_SERVICE);
    20 //添加震动权限
    21 vibrator.vibrate(new long[]{1000,10,1000,100},0);//
    22 vibrator.cancel();//关闭震动
    计时器

    标签页

    <第一种布局(java文件)>

    <java文件>

     1 TabHost tabHost = getTabHost();
     2     LayoutInflater.from(this).inflate(R.layout.biaoq,tabHost.getTabContentView(),true);
     3         TabSpec ts1 = tabHost.newTabSpec("tab1")
     4             .setIndicator("选项一")
     5             .setContent(R.id.ttv01);
     6         tabHost.addTab(ts1);
     7         TabSpec ts2 = tabHost.newTabSpec("tab2")
     8             .setIndicator("选项二")
     9             .setContent(R.id.ttv02);
    10         tabHost.addTab(ts2);
    11         TabSpec ts3 = tabHost.newTabSpec("tab3")
    12             .setIndicator("选项三")
    13             .setContent(R.id.ttv03);
    14         tabHost.addTab(ts3);
    标签页

    <xml>

     1 <LinearLayout
     2   xmlns:android="http://schemas.android.com/apk/res/android"
     3   android:layout_width="wrap_content"
     4   android:layout_height="wrap_content">
     5   <TextView
     6       android:id="@+id/ttv01"
     7       android:text="选项一内容:"
     8     android:layout_width="wrap_content"
     9     android:layout_height="wrap_content">
    10   </TextView>
    11   <TextView
    12       android:id="@+id/ttv02"
    13       android:text="选项二内容:"
    14     android:layout_width="wrap_content"
    15     android:layout_height="wrap_content">
    16   </TextView>
    17   <TextView
    18       android:id="@+id/ttv03"
    19       android:text="选项三内容:"
    20     android:layout_width="wrap_content"
    21     android:layout_height="wrap_content">
    22   </TextView>
    23 </LinearLayout>
    标签

     <第二种Java文件只要把ID修改>


    LayoutInflater.from(this).inflate(R.layout.biaoqtab,tabHost.getTabContentView(),true);
    .setContent(R.id.Line1);
    <xml文件>

     1 <TabHost
     2   xmlns:android="http://schemas.android.com/apk/res/android"
     3   android:orientation ="vertical"
     4   android:layout_width="fill_parent"
     5   android:layout_height="fill_parent">
     6   <LinearLayout
     7    android:orientation="vertical"
     8    android:id="@+id/Line1"
     9    android:layout_width="wrap_content"
    10    android:layout_height="wrap_content"
    11   >
    12   <TextView
    13    android:layout_width="wrap_content"
    14    android:text="是的发送到发送:"
    15    android:layout_height="wrap_content"/>
    16    <TextView
    17    android:layout_width="wrap_content"
    18    android:text="是的发送到发送到发送到:"
    19    android:layout_height="wrap_content"/>
    20   </LinearLayout>
    21   <LinearLayout
    22    android:orientation="vertical"
    23    android:id="@+id/Line3"
    24    android:layout_width="wrap_content"
    25    android:layout_height="wrap_content">
    26    <TextView
    27    android:layout_width="wrap_content"
    28    android:text="sdsdfsdfs:"
    29    android:layout_height="wrap_content"/>
    30   </LinearLayout>
    31 </TabHost>
    View Code


    注意:必须在TabHost中写

    菜单

    重写Activity中OnCreateOptionsMenu
    public boolean onCreateOptionsMenu(Menu menu) {
    //分组,菜单选项id,菜单编号,菜单标题
     menu.add(Menu.NONE,0,0,"保存");
     menu.add(Menu.NONE,1,0,"删除");
    //子菜单
     SubMenu help = menu.addSubMenu("帮助");
     help.add("保存介绍");
     help.add("出错方案");
     return super.onCreateOptionsMenu(menu);
     }
    上下级菜单
    TextView tv = (TextView)findViewById(R.id.tvv);
      registerForContextMenu(tv);
    @Override
    public void onCreateContextMenu(ContextMenu menu, View v,
     ContextMenuInfo menuInfo) {
      menu.add("保存");
      menu.add("删除");
      menu.add("退出");
      super.onCreateContextMenu(menu, v, menuInfo);
    }
    (第二种方法在onCreateContextMenu修改)
    MenuInflater fInflater = getMenuInflater();
      fInflater.inflate(R.menu.main, menu);
      menu.setHeaderIcon(R.drawable.icon);
      menu.setHeaderTitle("帮助");
    Gallery
    int [] imgs = {R.drawable.icon,R.drawable.wo,R.drawable.icon,R.drawable.wo};
    Gallery gallery= (Gallery)findViewById(R.id.gallery);
    List<Map<String,Integer>> data = new ArrayList<Map<String,Integer>>();
    for(int i=0;i<imgs.length;i++){
     int img = imgs[i];
     Map<String,Integer> map = new HashMap<String, Integer>();
     map.put("img",img);
     data.add(map);
     }
    SimpleAdapter dAdapter = new SimpleAdapter(this,data,R.layout.xiala1
     ,new String[]{"img"}
     ,new int[]{R.id.IMAGE});
    gallery.setAdapter(dAdapter);
    页面
     <ImageView
       android:src="@drawable/wo"
       android:layout_width="fill_parent"
     android:layout_height="wrap_content"
      />
      <Gallery
       android:id="@+id/gallery"
       android:layout_width="fill_parent"
     android:layout_height="fill_parent"
      />
    模板
    <ImageView
       android:id="@+id/IMAGE"
       android:layout_width="fill_parent"
     android:layout_height="wrap_content"
      />

  • 相关阅读:
    Reloading Java Classes 301: Classloaders in Web Development — Tomcat, GlassFish, OSGi, Tapestry 5 and so on Translation
    Chapter 6 -- Caches
    SVN OPS发布总结
    Chapter 5 -- ImmutableCollections
    差点掉坑,MySQL一致性读原来是有条件的
    PHP实现的一个时间帮助类
    H5拍照、选择图片上传组件核心
    Webpack + Vue 多页面项目升级 Webpack 4 以及打包优化
    javascript-函数表达式
    javascript遍历方法总结
  • 原文地址:https://www.cnblogs.com/luocixin/p/6944895.html
Copyright © 2020-2023  润新知