首页 文章 精选 留言 我的

精选列表

搜索[用户留存],共10000篇文章
优秀的个人博客,低调大师

android用户界面-组件Widget-选项卡Tab

使用Tab的步骤: 1、在布局文件中使用FrameLayout列出Tab组件及Tab中的内容组件。 2、Activity要继承TabActivity。 3、调用TabActivity的getTabHost()方法获得TabHost对象。 4、通过TabHost创建Tab选项。 /Chapter04_UI_Tab01/src/com/amaker/test/MainActivity.java 代码 packagecom.amaker.test; importandroid.app.TabActivity; importandroid.os.Bundle; importandroid.view.LayoutInflater; importandroid.view.Window; importandroid.view.WindowManager; importandroid.widget.TabHost; importandroid.widget.Toast; importandroid.widget.TabHost.OnTabChangeListener; publicclassMainActivityextendsTabActivity{ @Override publicvoidonCreate(BundlesavedInstanceState){ super.onCreate(savedInstanceState); /*requestWindowFeature(Window.FEATURE_NO_TITLE); getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);*/ TabHostth=getTabHost(); LayoutInflater.from(this).inflate(R.layout.main,th.getTabContentView(),true); th.addTab(th.newTabSpec("all").setIndicator("所有通话记录").setContent(R.id.TextView01)); th.addTab(th.newTabSpec("ok").setIndicator("已接来电").setContent(R.id.TextView02)); th.addTab(th.newTabSpec("cancel").setIndicator("未接来电").setContent(R.id.TextView03)); th.setOnTabChangedListener( newOnTabChangeListener(){ @Override publicvoidonTabChanged(StringtabId){ Toast.makeText(MainActivity.this,tabId,Toast.LENGTH_LONG).show(); } } ); } } /Chapter04_UI_Tab01/res/layout/main.xml 代码 <?xmlversion="1.0"encoding="utf-8"?> <FrameLayoutxmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/FrameLayout01" android:layout_width="wrap_content" android:layout_height="wrap_content"> <TextView android:id="@+id/TextView01" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="所有通话记录"></TextView> <TextView android:id="@+id/TextView02" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="已接来电"></TextView> <TextView android:id="@+id/TextView03" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="未接来电"></TextView> </FrameLayout> 通过实现一个接口TabHost.TabContentFactory的createTabContent方法来制定Tab的内容 /Chapter04_UI_Tab02/src/com/amaker/test/MainActivity.java 代码 packagecom.amaker.test; importjava.util.ArrayList; importjava.util.List; importandroid.app.TabActivity; importandroid.os.Bundle; importandroid.view.View; importandroid.widget.ArrayAdapter; importandroid.widget.ListView; importandroid.widget.TabHost; publicclassMainActivityextendsTabActivityimplements TabHost.TabContentFactory{ /**Calledwhentheactivityisfirstcreated.*/ @Override publicvoidonCreate(BundlesavedInstanceState){ super.onCreate(savedInstanceState); TabHostth=getTabHost(); th.addTab(th.newTabSpec("all").setIndicator("所有通话记录").setContent(this)); th.addTab(th.newTabSpec("ok").setIndicator("已接来电").setContent(this)); th .addTab(th.newTabSpec("cancel").setIndicator("未接来电") .setContent(this)); } publicViewcreateTabContent(Stringtag){ ListViewlv=newListView(this); List<String>list=newArrayList<String>(); list.add(tag); if(tag.equals("all")){ list.add("tom"); list.add("kite"); list.add("rose"); }elseif(tag.equals("ok")){ list.add("tom"); list.add("kite"); }else{ list.add("rose"); } ArrayAdapteradapter=newArrayAdapter(this, android.R.layout.simple_list_item_checked,list); lv.setAdapter(adapter); returnlv; } } /Chapter04_UI_Tab02/res/layout/main.xml 代码 <?xmlversion="1.0"encoding="utf-8"?> <LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/hello" /> </LinearLayout> 本文转自linzheng 51CTO博客,原文链接:http://blog.51cto.com/linzheng/1080696

优秀的个人博客,低调大师

android用户界面-组件Widget-进度条ProgressBar

android的进度条有对话框进度条、标题进度条和水平进度条 一、对话框进度条 创建步骤 1、覆盖Activity的onCreateDialog()方法,并在其中创建对话框。 2、调用Activity的showDialog()方法,显示进度条对话框。 /Chapter04_UI_ProgressBar01/src/com/amaker/test/MainActivity.java 代码 packagecom.amaker.test; importandroid.app.Activity; importandroid.app.Dialog; importandroid.app.ProgressDialog; importandroid.content.DialogInterface; importandroid.os.Bundle; importandroid.view.View; importandroid.view.View.OnClickListener; importandroid.widget.Button; publicclassMainActivityextendsActivity{ privateButtonmyBtn; @Override publicvoidonCreate(BundlesavedInstanceState){ super.onCreate(savedInstanceState); setContentView(R.layout.main); myBtn=(Button)findViewById(R.id.Button01); myBtn.setOnClickListener(newOnClickListener(){ publicvoidonClick(Viewv){ showDialog(0); } }); } @Override protectedDialogonCreateDialog(intid){ ProgressDialogdialog=newProgressDialog(this); //可以不显示标题 dialog.setTitle("测试对话框"); dialog.setIndeterminate(true); dialog.setMessage("程序正在加载请稍后!"); dialog.setCancelable(true); dialog.setButton(Dialog.BUTTON_POSITIVE,"确定", newDialogInterface.OnClickListener(){ @Override publicvoidonClick(DialogInterfacedialog,intwhich){ dialog.cancel(); } } ); returndialog; } } 二、标题栏进度条 1、调用Activity的requestWindowFeatures()方法,获得进度条。 2、调用Activity的setProgressBarIndeterminateVisibility()方法,显示进度条对话框。 /Chapter04_UI_ProgressBar02/src/com/amaker/test/MainActivity.java 代码 packagecom.amaker.test; importandroid.app.Activity; importandroid.os.Bundle; importandroid.view.View; importandroid.view.Window; importandroid.view.View.OnClickListener; importandroid.widget.Button; publicclassMainActivityextendsActivity{ /**Calledwhentheactivityisfirstcreated.*/ privateButtonb1,b2; @Override publicvoidonCreate(BundlesavedInstanceState){ super.onCreate(savedInstanceState); requestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS); setContentView(R.layout.main); b1=(Button)findViewById(R.id.Button01); b2=(Button)findViewById(R.id.Button02); b1.setOnClickListener(newOnClickListener(){ publicvoidonClick(Viewv){ setProgressBarIndeterminateVisibility(true); } }); b2.setOnClickListener(newOnClickListener(){ publicvoidonClick(Viewv){ setProgressBarIndeterminateVisibility(false); } }); } } 三、水平进度条 创建步骤 1、在布局文件中声明ProgressBar。 2、在Activity中获得ProgressBar实例。 3、调用ProgressBar的incrementProgressBy()方法增加和减少进度。 /Chapter04_UI_ProgressBar03/src/com/amaker/test/MainActivity.java 代码 packagecom.amaker.test; importandroid.app.Activity; importandroid.os.Bundle; importandroid.view.View; importandroid.view.View.OnClickListener; importandroid.widget.Button; importandroid.widget.ProgressBar; publicclassMainActivityextendsActivity{ privateButtonb1,b2; ProgressBarprogressBar; @Override publicvoidonCreate(BundlesavedInstanceState){ super.onCreate(savedInstanceState); setContentView(R.layout.main); b1=(Button)findViewById(R.id.Button01); b2=(Button)findViewById(R.id.Button02); progressBar=(ProgressBar)findViewById(R.id.ProgressBar01); b1.setOnClickListener(newOnClickListener(){ publicvoidonClick(Viewv){ progressBar.incrementProgressBy(1); } }); b2.setOnClickListener(newOnClickListener(){ publicvoidonClick(Viewv){ progressBar.incrementProgressBy(-1); } }); } } /Chapter04_UI_ProgressBar03/res/layout/main.xml 代码 <?xmlversion="1.0"encoding="utf-8"?> <LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <ProgressBar android:id="@+id/ProgressBar01" style="?android:attr/progressBarStyleHorizontal" android:layout_width="200dip" android:layout_height="wrap_content" android:max="100" android:progress="50" ></ProgressBar> <Button android:id="@+id/Button01" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="增加"></Button> <Button android:id="@+id/Button02" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="減少"></Button> </LinearLayout> 本文转自linzheng 51CTO博客,原文链接:http://blog.51cto.com/linzheng/1080695

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

WebStorm

WebStorm

WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。

用户登录
用户注册