Android一个小的浏览资源效果

LogCat调测信息

成都创新互联公司是专业的江岸网站建设公司,江岸接单;提供网站制作、做网站,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行江岸网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!

在Window -> Show View -> Other... -> Android -> LogCat,这样将显示LogCat的窗口,对于System.out.print()以及Log.d(),可以打印出我们所需要的信息,例如:

 
 
 
 
  1. System.out.print("Hello ---------------------\n");   
  2. Log.d("WEI","Hi ------------------1-----------");   
  3. Log.d("WEI","Hi -------------------2----------"); 

这样,我们在LogCat的查窗口,可以看到相关的信息:

效果图

GalleyView 
 
Galley是画廊的意思,一般只在图片显示中使用,而且也不常用。

1)Android XML文件

Java代码:

 
 
 
 
  1.  
  2. android:id="@+id/gallery" 
  3. android:layout_width="fill_parent" 
  4. android:layout_height="wrap_content"> 
  5.  

由于Galley用户处理图片,因此处理item可采用ImageView,在设置adapter中,我们可以参见《Android 学习笔记(十三):Activity-GridView 》中对BaseAdapter进行继承。

2)Java源代码

Java代码:

 
 
 
 
  1. public class Chapter7Test8 extends Activity {  
  2. @Override   
  3. protected void onCreate(Bundle savedInstanceState) {  
  4. super.onCreate(savedInstanceState);  
  5. setContentView(R.layout.chapter_7_test8);   
  6. //步骤1:和之前学习的一样,设置adapter来描述item的内容以及设置item的格式;通过setOnItemClickListener()设置点击触发的操作。   
  7. Gallery gallery = (Gallery)findViewById(R.id.gallery);  
  8. gallery.setAdapter (new ImageAdapter (this));  
  9. gallery.setOnItemClickListener (new OnItemClickListener(){  
  10. public void onItemClick(AdapterView parent,View v,int position,long id){  
  11. Toast.makeText(Chapter7Test8.this,""+position,Toast.LENGTH_SHORT).show();  
  12. }  
  13. } );  
  14. }  
  15.  
  16. //步骤2:adapter继承BaseAdapter,具体描述item。需要创建构造函数,具体化getCount(), getItem(), getItemId(), getView()。   
  17. private class ImageAdapter extends BaseAdapter{  
  18. private Context mContext;  
  19. private Integer[] mImageIds = { R.drawable.sample_1, R.drawable.sample_2, R.drawable.sample_3,  
  20. R.drawable.sample_4, R.drawable.sample_5, R.drawable.sample_6,  
  21. R.drawable.sample_7 }; //我们将名称为drawable_sample_1的图片文件,拷贝到drawable/下面。   
  22. public ImageAdapter(Context context){  
  23. mContext = context;  
  24. }  
  25. public int getCount() {  
  26. return mImageIds.length;  
  27. }  
  28. public Object getItem(int position) {  
  29. return position;  
  30. }  
  31. public long getItemId(int position) {  
  32. return position;  
  33. }  
  34. //步骤3:每个item都是ImageView,通过setImageResource将图片呈现,设置每个item的大小,以及显示比例,这里,我们采用FIT_XY,根据X:Y将整个图片显示出来,如果X:Y和图片长:宽不一样,图片可能有些变形。   
  35. public View getView(int position, View convertView, ViewGroup parent) {  
  36. ImageView image = new ImageView(mContext);  
  37. image.setImageResource(mImageIds[position]);  
  38. image.setLayoutParams(new Gallery.LayoutParams(150,100));  
  39. image.setScaleType(ImageView.ScaleType.FIT_XY);  
  40. return image;  
  41. }   
  42. }  
  43. }  
  44. 3)通过xml文件对item的格式进行设置   
  45. 我们在res/values/下面增加一个xml文件,用于描述自定义widget的属性格式为  
  46. Java代码:  
  47.  
  48.  
  49.  
  50.  
  51.  
  52.  

在R.java中将增加int R.styleable.XXXX[]来表示此定义,如果里面有2个属性,则有两个元素。在本例,设置style的属性,我们设置一个android已定义的属性galleryItembackground,它定义一个具有一个边框的gallery的item。如下:

Java代码:

 
 
 
 
  1.  
  2.  
  3.  
  4.  
  5.  

获得自定义属性方式:

Java代码:

 
 
 
 
  1. TypedArray a= obtainStyledAttributes (R.styleable.XXX /*int[]*/ );  
  2. aattrId = a.getResourceId (R.styleable.XXXX_AAAA,defaultId);//获得该属性的ID, 如果没有发现该属性,则返回defaultId的值。   
  3. a.recyle (),//在使用obtainStyledAttributes()后应调用,是的可以被系统重用。  

在这个例子中:

Java代码:

 
 
 
 
  1. public ImageAdapter(Context context){  
  2. TypedArray a= obtainStyledAttributes(R.styleable.HelloGallery);  
  3. mGalleryItemBackground = a.getResourceId(R.styleable.HelloGallery_android_galleryItemBackground , 0);  
  4. a.recycle();  
  5. }  
  6. public View getView(int position, View convertView, ViewGroup parent) {  
  7. image.setBackgroundResource (mGalleryItemBackground);  
  8. }  

 

【编辑推荐】

Android 开发简介 基于平台

Android开发:Activity之间的传值

Android开发:自定义GridView/ListView数据源

分享题目:Android一个小的浏览资源效果
链接分享:http://www.hantingmc.com/qtweb/news14/128914.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联