现在写的文章比较杂乱,只是记录下当天学习到的知识点,没有系统的总结说明,三个月后再看自己写的这些,或许是另外一番感慨吧。已经坚持学习12天了,可以写出简单的小应用,加油吧。今天还看了apk发布,app内置广告等,感慨还是苹果的好用,一个账号可以一路到底。安卓那么多手机类型,那么多发布平台,,,安卓的小伙伴们你们是怎么发布应用呢,都发布到哪里呢?
小知识点:
android:ems = "10" 的含义 : 指的是将对应的控件宽度设为10个字符的宽度。当设置该属性后,一行中最大只能显示设置的宽度。
ArrayAdapter
当数据源是一个数组,可以使用这个适配器。默认情况下,ArrayAdapter创建一个视图,每个阵列项目的每个项目上调用toString()并放置在TextView 作为内容。要显示在ListView一个字符串数组,初始化一个新的ArrayAdapter使用构造函数来指定每个字符串的字符串数组的布局
ArrayAdapteradapter =newArrayAdapter(this, R.layout.ListView,StringArray);
下面是此构造函数的参数:
第一个参数 this 是应用程序上下文。在大多数的情况下使用this 。
第二个参数是定义在XML文件中的布局,它是 TextView 数组中的每个字符串。
最后一个参数是一个数组,字符串将被填充到文本视图。
调用方法:
ListViewlistView =(ListView)findViewById(R.id.listview);
listView.setAdapter(adapter);
SimpleCursorAdapter
使用这个适配器,当数据源是一个数据库游标。SimpleCursorAdapter必须使用光标指定一个布局中的每一行,哪些应该被插入到光标列布局的视图。
例如,创建一个列表人的姓名和电话号码,可以执行一个查询,返回游标包含每个人的姓名和号码列。然后创建一个字符串数组,指定列游标,在每个结果的布局和一个整数数组指定每一列放在相应的视图:
String[]fromColumns ={ContactsContract.Data.DISPLAY_NAME,
ContactsContract.CommonDataKinds.Phone.NUMBER};
int[]toViews ={R.id.display_name,R.id.phone_number};
SimpleCursorAdapter 实例化时,通过为每个要使用的布局,包含结果的游标和这两个数组:
SimpleCursorAdapter 创建一个视图的每一行游标使用所提供的布局插入每个fromColumns 项的相应 toViews 视图。
在Android中有一类叫做ProgressDialog,允许创建进度条。为了做到这一点,需要实例化这个类的一个对象。其语法如下:ProgressDialogprogress =newProgressDialog(this);
现在,可以设置此对话框的某些属性。比如,它的风格,文本等
progress.setMessage("Downloading Music :) ");
progress.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
progress.setIndeterminate(true);
1 getMax() 此方法返回进度的最大值
2 incrementProgressBy(int diff) 此方法增加了进度条由值作为参数传递的区别
3 setIndeterminate(boolean indeterminate) 此方法设置进度指示确定或不确定
4 setMax(int max) 此方法设置进度对话框的最大值
5 setProgress(int value) 此方法用于更新对话框进度某些特定的值
6 show(Context context, CharSequence title, CharSequence message)
这是一个静态方法,用来显示进度对话框
Spinner 下拉
Android提供的剪贴板框架,复制和粘贴不同类型的数据。数据可以是文本,图像,二进制流数据或其它复杂的数据类型。
Android提供ClipboardManager、ClipData.Item和ClipData库使用复制和粘贴的框架。为了使用剪贴板的框架,需要把数据转化为剪辑对象,然后把该对象为全系统剪贴板。
为了使用剪贴板,需要通过调用getSystemService()方法来实例化ClipboardManager的对象。它的语法如下:
ClipboardManagermyClipboard;
myClipboard =(ClipboardManager)getSystemService(CLIPBOARD_SERVICE);
复制数据
需要做的下一件事就是通过调用ClipData类的数据方法的相应类型来实例化ClipData对象。如果文本数据在newPlainText方法被调用。必须将数据设置为剪贴板管理器对象的剪辑。它的语法如下:
ClipDatamyClip;
Stringtext ="hello world";
myClip =ClipData.newPlainText("text",text);
myClipboard.setPrimaryClip(myClip);
粘贴数据
为了粘贴数据,先要通过调用getPrimaryClip()方法拿到剪辑。并从点击就可 ClipData.Item 对象的项目。从对象将得到数据。它的语法如下:
ClipDataabc =myClipboard.getPrimaryClip();
ClipData.Itemitem =abc.getItemAt(0);
Stringtext =item.getText().toString();
方法说明:
1 getPrimaryClip() 这个方法只是返回剪贴板上的当前主片段
2 getPrimaryClipDescription() 此方法返回剪贴板上的当前主剪辑的说明,但不是它的数据的一个拷贝
3 hasPrimaryClip() 如果当前剪贴板上的主要片段此方法返回true
4 setPrimaryClip(ClipData clip) 此方法将剪贴板上的当前主片段
5 setText(CharSequence text) 这种方法可直接用于复制文本到剪贴板
6 getText() 这种方法可直接用于获取剪贴板复制的文本