HorizontalScrollView的使用演示样例
MainActivity例如以下:
package cc.cv; import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.TextView;
import android.app.Activity;
import android.content.Context;
/**
* Demo描写叙述:
* HorizontalScrollView的简单使用
*
* 在Google文档中Gallery已经弃用.推荐使用HorizontalScrollView和ViewPager.
* ViewPager用过不少,HorizontalScrollView倒是非常少使用.所以在此学习.
*
* Demo说明:
* 1 布局文件非常easy,在HorizontalScrollView中嵌套了一个LinearLayout
* 2 在代码中仅仅需将自己定义的View加入到LinearLayout中就可以.
* 这样就能够实现水平滑动了.
*
*/
public class MainActivity extends Activity {
private Context mContext;
private int [] mPhotosIntArray;
private LayoutInflater mLayoutInflater;
private LinearLayout mGalleryLinearLayout;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
initView();
initData();
} private void initView(){
mContext=this;
mGalleryLinearLayout=(LinearLayout) findViewById(R.id.galleryLinearLayout);
mLayoutInflater=LayoutInflater.from(mContext);
}
private void initData(){
mPhotosIntArray=new int[]{R.drawable.a,R.drawable.b,R.drawable.c,R.drawable.d,R.drawable.e,R.drawable.f,R.drawable.g,R.drawable.h};
View itemView=null;
ImageView imageView=null;
TextView textView;
for (int i = 0; i < mPhotosIntArray.length; i++) {
itemView=mLayoutInflater.inflate(R.layout.gallery_item, null);
imageView=(ImageView) itemView.findViewById(R.id.imageView);
textView=(TextView) itemView.findViewById(R.id.textView);
imageView.setImageResource(mPhotosIntArray[i]);
textView.setText("This is "+(i+1));
mGalleryLinearLayout.addView(itemView);
}
} }
main.xml例如以下:
<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" > <HorizontalScrollView
android:layout_width="match_parent"
android:layout_height="150dip"
android:layout_centerInParent="true"
android:scrollbars="horizontal" > <LinearLayout
android:id="@+id/galleryLinearLayout"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:gravity="center_vertical" >
</LinearLayout> </HorizontalScrollView> </RelativeLayout>
gallery_item.xml例如以下:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content" > <ImageView
android:id="@+id/imageView"
android:layout_width="80dip"
android:layout_height="80dip"
android:layout_centerHorizontal="true" /> <TextView
android:id="@+id/textView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@id/imageView"
android:layout_centerHorizontal="true"
android:layout_marginTop="8dip" /> </RelativeLayout>
HorizontalScrollView的使用演示样例的更多相关文章
- JDBC连接MySQL数据库及演示样例
JDBC是Sun公司制定的一个能够用Java语言连接数据库的技术. 一.JDBC基础知识 JDBC(Java Data Base Connectivity,java数据库连接)是一种用 ...
- java 覆盖hashCode()深入探讨 代码演示样例
java 翻盖hashCode()深入探讨 代码演示样例 package org.rui.collection2.hashcode; /** * 覆盖hashcode * 设计HashCode时最重要 ...
- 模式识别 - 处理多演示样例学习(MIL)特征(matlab)
处理多演示样例学习(MIL)特征(matlab) 本文地址: http://blog.csdn.net/caroline_wendy/article/details/27206325 多演示样例学习( ...
- java并行调度框架封装及演示样例
參考资料: 阿里巴巴开源项目 CobarClient 源代码实现. 分享作者:闫建忠 分享时间:2014年5月7日 ---------------------------------------- ...
- Java连接redis的使用演示样例
Java连接redis的使用演示样例 Redis是开源的key-value存储工具,redis通经常使用来存储结构化的数据,由于redis的key能够包括String.hash.listset和sor ...
- Introspector(内省)简单演示样例 与 简单应用
简单演示样例: package com.asdfLeftHand.test; import java.beans.BeanDescriptor; import java.beans.BeanInfo; ...
- libcurl使用演示样例
简要说明:C++使用libcurl訪问"www.baidu.com".获取返回码和打印出http文件 /* * @ libcurl使用演示样例 * @ 2014.04.29 * @ ...
- 构造Scala开发环境并创建ApiDemos演示样例项目
从2011年開始写Android ApiDemos 以来.Android的版本号也更新了非常多,眼下的版本号已经是4.04. ApiDemos中的样例也添加了不少,有必要更新Android ApiDe ...
- OpenCV LDA(Linnear Discriminant analysis)类的使用---OpenCV LDA演示样例
1.OpenCV中LDA类的声明 //contrib.hpp class CV_EXPORTS LDA { public: // Initializes a LDA with num_componen ...
随机推荐
- pomelo 安装
1. 安装nodejs ,python ,C++运行环境(VS2012以上版本) 2.npm install -g node-gyp --registry=https://registry.npm.t ...
- PHP程序员未来路在何方
PHP 从诞生到现在已经有20多年历史,从Web时代兴起到移动互联网退潮,互联网领域各种编程语言和技术层出不穷, Node.js . GO . Python 不断地在挑战 PHP 的地位.这些技术的推 ...
- thinkphp调整框架核心目录think的位置
thinkphp的核心目录即框架文件可以放在项目之外的目录,这点手册上有提到,放在项目之外的地方可以方便其他项目共用一个框架文件. 在入口文件的index.php中,在导入框架目录这一行,可以直接修改 ...
- js缓存加密
1.访问A链接就以A链接的特定部分为密码盐,生成一个js跳转配置文件名 aojoweiojoiwjeiof2.PHP在生成js跳转文件名的时候,也是根据数据库中的跳转起始链接特定部分作为盐,生成的文件 ...
- 关于谷歌浏览器62版本之后引用video.js不能自动播放的问题(Cross-origin plugin content from http://vjs.zencdn.net/swf/5.0.0-rc1/video-js.swf must have a visible size larger than 400 x 300 pixels, or it will be blocked.)
Cross-origin plugin content from http://vjs.zencdn.net/swf/5.0.0-rc1/video-js.swf must have a visibl ...
- ES6-const注意
注意要点 const 如何做到变量在声明初始化之后不允许改变的?其实 const 其实保证的不是变量的值不变,而是保证变量指向的内存地址所保存的数据不允许改动.此时,你可能已经想到,简单类型和复合类型 ...
- 使用IDEA和Maven创建Javaweb项目
1.File -- New -- Project
- shell rename directory
mv can do two jobs. It can move files or directories It can rename files or directories To just rena ...
- new Date 兼容性问题
IOS 11.1.2 iphoneX 下面解析 // 下面的代码会报错 var d = new Date('2018-09-20 19:20:32'); alert(d.getTime()); 必 ...
- Acer宏碁暗影骑士3进阶版无法进入系统引导修复
1.刚开机时,按住alt不放,不停点击F10进入恢复系统: 2.点击疑难解答,选择cmd: 3.以下是cmd命令,//注释不要复制 c: //进入C盘 cd windows cd system32 b ...