project init

master
Administrator 13 years ago
parent 4afbf35f6b
commit fc5f26c5c5

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" path="src"/>
<classpathentry kind="src" path="gen"/>
<classpathentry kind="con" path="com.android.ide.eclipse.adt.ANDROID_FRAMEWORK"/>
<classpathentry kind="con" path="com.android.ide.eclipse.adt.LIBRARIES"/>
<classpathentry kind="output" path="bin/classes"/>
</classpath>

@ -0,0 +1,3 @@
.settings
bin/
gen/

@ -0,0 +1,33 @@
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>AndroidImageIndicator</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>com.android.ide.eclipse.adt.ResourceManagerBuilder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>com.android.ide.eclipse.adt.PreCompilerBuilder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>org.eclipse.jdt.core.javabuilder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>com.android.ide.eclipse.adt.ApkBuilder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>com.android.ide.eclipse.adt.AndroidNature</nature>
<nature>org.eclipse.jdt.core.javanature</nature>
</natures>
</projectDescription>

@ -0,0 +1,27 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.androidimageindicator"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="17" />
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name="com.app.library.common.view.sample.SampleActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>

Binary file not shown.

After

Width:  |  Height:  |  Size: 50 KiB

@ -0,0 +1,20 @@
# To enable ProGuard in your project, edit project.properties
# to define the proguard.config property as described in that file.
#
# Add project specific ProGuard rules here.
# By default, the flags in this file are appended to flags specified
# in ${sdk.dir}/tools/proguard/proguard-android.txt
# You can edit the include path and order by changing the ProGuard
# include property in project.properties.
#
# For more details, see
# http://developer.android.com/guide/developing/tools/proguard.html
# Add any project specific keep options here:
# If your project uses WebView with JS, uncomment the following
# and specify the fully qualified class name to the JavaScript interface
# class:
#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
# public *;
#}

@ -0,0 +1,15 @@
# This file is automatically generated by Android Tools.
# Do not modify this file -- YOUR CHANGES WILL BE ERASED!
#
# This file must be checked in Version Control Systems.
#
# To customize properties used by the Ant build system edit
# "ant.properties", and override values to adapt the script to your
# project structure.
#
# To enable ProGuard to shrink and obfuscate your code, uncomment this (available properties: sdk.dir, user.home):
#proguard.config=${sdk.dir}/tools/proguard/proguard-android.txt:proguard-project.txt
# Project target.
target=android-17
android.library.reference.1=../android-app-http/android-app-http

Binary file not shown.

After

Width:  |  Height:  |  Size: 422 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 422 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 420 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 342 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 181 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 380 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

@ -0,0 +1,8 @@
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/arrow_left_focus" android:state_pressed="true"/>
<item android:drawable="@drawable/arrow_left_focus" android:state_selected="true"/>
<item android:drawable="@drawable/arrow_left_focus" android:state_focused="true"/>
<item android:drawable="@drawable/arrow_left"/>
</selector>

@ -0,0 +1,8 @@
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/arrow_right_focus" android:state_pressed="true"/>
<item android:drawable="@drawable/arrow_right_focus" android:state_selected="true"/>
<item android:drawable="@drawable/arrow_right_focus" android:state_focused="true"/>
<item android:drawable="@drawable/arrow_right"/>
</selector>

@ -0,0 +1,12 @@
<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"
>
<com.app.library.common.view.ImageIndicatorView
android:id="@+id/scroll_indicate_view"
android:layout_width="match_parent"
android:layout_height="160dp" />
</RelativeLayout>

@ -0,0 +1,11 @@
<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" >
<com.app.library.common.view.AutoImageIndicatorView
android:id="@+id/auto_scroll_indicate_view"
android:layout_width="match_parent"
android:layout_height="160dp" />
</RelativeLayout>

@ -0,0 +1,28 @@
<LinearLayout 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"
android:orientation="vertical">
<Button
android:id="@+id/button1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="22dp"
android:text="IMAGE_INDICATOR" />
<Button
android:id="@+id/button2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="22dp"
android:text="AUTO_IMAGE_INDICATOR" />
<Button
android:id="@+id/button3"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="22dp"
android:text="USERGUIDE_INDICATOR" />
</LinearLayout>

@ -0,0 +1,53 @@
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<android.support.v4.view.ViewPager
android:id="@+id/view_pager"
android:layout_width="fill_parent"
android:layout_height="wrap_content" />
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true"
android:gravity="bottom" >
<Button
android:id="@+id/left_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/arrow_left_selector" />
</LinearLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:gravity="bottom" >
<Button
android:id="@+id/right_button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/arrow_right_selector" />
</LinearLayout>
<LinearLayout
android:id="@+id/indicater_layout"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_alignParentBottom="true"
android:layout_marginBottom="10dp"
android:gravity="center"
android:minHeight="10dp"
android:minWidth="60dp"
android:orientation="horizontal" >
</LinearLayout>
</RelativeLayout>

@ -0,0 +1,7 @@
<resources>
<!-- Default screen margins, per the Android Design guidelines. -->
<dimen name="activity_horizontal_margin">16dp</dimen>
<dimen name="activity_vertical_margin">16dp</dimen>
</resources>

@ -0,0 +1,8 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">AndroidImageIndicator</string>
<string name="action_settings">Settings</string>
<string name="hello_world">Hello world!</string>
</resources>

@ -0,0 +1,20 @@
<resources>
<!--
Base application theme, dependent on API level. This theme is replaced
by AppBaseTheme from res/values-vXX/styles.xml on newer devices.
-->
<style name="AppBaseTheme" parent="android:Theme.Light">
<!--
Theme customizations available in newer API levels can go in
res/values-vXX/styles.xml, while customizations related to
backward-compatibility can go here.
-->
</style>
<!-- Application theme. -->
<style name="AppTheme" parent="AppBaseTheme">
<!-- All customizations that are NOT specific to a particular API-level can go here. -->
</style>
</resources>

@ -0,0 +1,164 @@
package com.app.library.common.view;
import java.util.concurrent.Executors;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.TimeUnit;
import android.content.Context;
import android.os.Handler;
import android.util.AttributeSet;
/**
* (
*
* @author savant-pan
*
*/
public class AutoImageIndicatorView extends ImageIndicatorView {
/**
*
*/
private ScheduledExecutorService scheduler;
/**
*
*/
private boolean broadcastEnagle = false;
/**
*
*/
private static final long DEFAULT_STARTMILS = 3 * 1000;
/**
*
*/
private static final long DEFAULT_INTEVALMILS = 5 * 1000;
/**
* ms
*/
private long startMils = DEFAULT_STARTMILS;
/**
* ms
*/
private long intevalMils = DEFAULT_INTEVALMILS;
/**
*
*/
private final static int RIGHT = 0;
/**
*
*/
private final static int LEFT = 1;
/**
*
*/
private int direction = RIGHT;
/**
*
*/
private static final int DEFAULT_TIMES = -1;
/**
*
*/
private int broadcastTimes = DEFAULT_TIMES;
/**
*
*/
private int timeCount = 0;
public AutoImageIndicatorView(Context context, AttributeSet attrs) {
super(context, attrs);
this.init();
}
public AutoImageIndicatorView(Context context) {
super(context);
this.init();
}
private void init() {
this.scheduler = Executors.newScheduledThreadPool(1);
}
/**
*
*
* @param startMils
* ms(8s)
* @param intevelMils
* ms(3s)
*/
public void setBroadcastTimeIntevel(long startMils, long intevelMils) {
this.startMils = startMils;
this.intevalMils = intevelMils;
}
/**
*
*
* @param flag
*
*/
public void setBroadcastEnable(boolean flag) {
this.broadcastEnagle = flag;
}
/**
*
*
* @param times
*
*/
public void setBroadCastTimes(int times) {
this.broadcastTimes = times;
}
@Override
public void show() {
super.show();
// 定时播放服务
this.scheduler.scheduleAtFixedRate(new Runnable() {
@Override
public void run() {
if (broadcastEnagle) {
if (System.currentTimeMillis() - getRefreshTime() < 5 * 1000) {// 最近一次划动间隔小于5s
return;
}
if ((broadcastTimes != DEFAULT_TIMES) && (timeCount > broadcastTimes)) {// 循环次数用完
return;
}
broadcastHandler.sendEmptyMessage(0);
}
}
}, this.startMils, this.intevalMils, TimeUnit.MILLISECONDS);
}
/**
*
*/
private Handler broadcastHandler = new Handler() {
public void handleMessage(android.os.Message msg) {
if (direction == RIGHT) {// roll right
if (getCurrentIndex() < getTotalCount()) {
if (getCurrentIndex() == getTotalCount() - 1) {
timeCount++;// 循环次数次数加1
direction = LEFT;
} else {
getViewPager().setCurrentItem(getCurrentIndex() + 1, true);
}
}
} else {// roll left
if (getCurrentIndex() >= 0) {
if (getCurrentIndex() == 0) {
direction = RIGHT;
} else {
getViewPager().setCurrentItem(getCurrentIndex() - 1, true);
}
}
}
}
};
}

@ -0,0 +1,483 @@
package com.app.library.common.view;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import android.content.Context;
import android.os.Handler;
import android.os.Message;
import android.os.Parcelable;
import android.support.v4.view.PagerAdapter;
import android.support.v4.view.ViewPager;
import android.support.v4.view.ViewPager.OnPageChangeListener;
import android.util.AttributeSet;
import android.view.LayoutInflater;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;
import android.widget.ImageView.ScaleType;
import android.widget.LinearLayout;
import android.widget.RelativeLayout;
import com.app.library.http.WebImageView;
import com.example.androidimageindicator.R;
/**
* ,(Gallery)
*
* @author savant-pan
*
*/
public class ImageIndicatorView extends RelativeLayout {
/**
* ViewPager
*/
private ViewPager viewPager;
/**
*
*/
private LinearLayout indicateLayout;
/**
*
*/
private Button leftButton;
/**
*
*/
private Button rightButton;
/**
*
*/
private List<View> viewList = new ArrayList<View>();
private Handler refreshHandler;
/**
*
*/
private OnItemChangeListener onItemChangeListener;
/**
*
*/
private OnItemClickListener onItemClickListener;
/**
*
*/
private int totelCount = 0;
/**
*
*/
private int currentIndex = 0;
/**
* +
*/
public static final int INDICATE_ARROW_ROUND_STYLE = 0;
/**
*
*/
public static final int INDICATE_USERGUIDE_STYLE = 1;
/**
* INDICATOR
*/
private int indicatorStyle = INDICATE_ARROW_ROUND_STYLE;
/**
*
*/
private long refreshTime = 0l;
/**
* 广
*/
public interface OnItemChangeListener {
void onPosition(int position, int totalCount);
}
/**
*
*/
public interface OnItemClickListener {
void OnItemClick(View view, int position);
}
public ImageIndicatorView(Context context, AttributeSet attrs) {
super(context, attrs);
this.init(context);
}
public ImageIndicatorView(Context context) {
super(context);
this.init(context);
}
/**
* @param context
*/
private void init(Context context) {
LayoutInflater.from(context).inflate(R.layout.image_indicator_layout, this);
this.viewPager = (ViewPager) findViewById(R.id.view_pager);
this.indicateLayout = (LinearLayout) findViewById(R.id.indicater_layout);
this.leftButton = (Button) findViewById(R.id.left_button);
this.rightButton = (Button) findViewById(R.id.right_button);
this.leftButton.setVisibility(View.GONE);
this.rightButton.setVisibility(View.GONE);
this.viewPager.setOnPageChangeListener(new PageChangeListener());
final ArrowClickListener arrowClickListener = new ArrowClickListener();
this.leftButton.setOnClickListener(arrowClickListener);
this.rightButton.setOnClickListener(arrowClickListener);
this.refreshHandler = new ScrollIndicateHandler(ImageIndicatorView.this);
}
/**
* ViewPager
*
* @return
*/
protected ViewPager getViewPager() {
return viewPager;
}
/**
* Index
*/
protected int getCurrentIndex() {
return this.currentIndex;
}
/**
* VIEW
*/
protected int getTotalCount() {
return this.totelCount;
}
/**
*
*/
protected long getRefreshTime() {
return this.refreshTime;
}
/**
* View
*
* @param view
*/
public void addViewItem(View view) {
final int position = viewList.size();
view.setOnClickListener(new ItemClickListener(position));
this.viewList.add(view);
}
/**
*
*/
private class ItemClickListener implements View.OnClickListener {
private int position = 0;
public ItemClickListener(int position) {
this.position = position;
}
@Override
public void onClick(View view) {
if (onItemClickListener != null) {
onItemClickListener.OnItemClick(view, position);
}
}
}
/**
* Drawable
*
* @param resArray
* Drawable
*/
public void setupLayoutByDrawable(final Integer resArray[]) {
if (resArray == null)
throw new NullPointerException();
this.setupLayoutByDrawable(Arrays.asList(resArray));
}
/**
* Drawable
*
* @param resList
* Drawable
*/
public void setupLayoutByDrawable(final List<Integer> resList) {
if (resList == null)
throw new NullPointerException();
final int len = resList.size();
if (len > 0) {
for (int index = 0; index < len; index++) {
final View pageItem = new ImageView(getContext());
pageItem.setBackgroundResource(resList.get(index));
addViewItem(pageItem);
}
}
}
/**
* URL
*
* @param urlList
* URL
*/
public void setupLayoutByImageUrl(final List<String> urlList) {
if (urlList == null)
throw new NullPointerException();
final int len = urlList.size();
if (len > 0) {
for (int index = 0; index < len; index++) {
final WebImageView pageItem = new WebImageView(getContext());
pageItem.setScaleType(ScaleType.FIT_XY);
pageItem.setURLAsync(urlList.get(index));
addViewItem(pageItem);
}
}
}
/**
*
*
* @param index
* postion
*/
public void setCurrentItem(int index) {
this.currentIndex = index;
}
/**
* INDICATOR_ARROW_ROUND_STYLE
*
* @param style
* INDICATOR_USERGUIDE_STYLEINDICATOR_ARROW_ROUND_STYLE
*/
public void setIndicateStyle(int style) {
this.indicatorStyle = style;
}
/**
*
*
* @param onGuideListener
*/
public void setOnItemChangeListener(OnItemChangeListener onItemChangeListener) {
if (onItemChangeListener == null) {
throw new NullPointerException();
}
this.onItemChangeListener = onItemChangeListener;
}
/**
*
*
* @param onItemClickListener
*/
public void setOnItemClickListener(OnItemClickListener onItemClickListener) {
this.onItemClickListener = onItemClickListener;
}
/**
*
*/
public void show() {
this.totelCount = viewList.size();
final LayoutParams params = (LayoutParams) indicateLayout.getLayoutParams();
if (INDICATE_USERGUIDE_STYLE == this.indicatorStyle) {// 操作指引
params.bottomMargin = 45;
}
this.indicateLayout.setLayoutParams(params);
// 初始化指示器
for (int index = 0; index < this.totelCount; index++) {
final View indicater = new ImageView(getContext());
this.indicateLayout.addView(indicater, index);
}
this.refreshHandler.sendEmptyMessage(currentIndex);
// 为ViewPager配置数据
this.viewPager.setAdapter(new MyPagerAdapter(this.viewList));
this.viewPager.setCurrentItem(currentIndex, false);
}
/**
*
*/
private class ArrowClickListener implements View.OnClickListener {
@Override
public void onClick(View view) {
if (view == leftButton) {
if (currentIndex >= (totelCount - 1)) {
return;
} else {
viewPager.setCurrentItem(currentIndex + 1, true);
}
} else {
if (totelCount <= 0) {
return;
} else {
viewPager.setCurrentItem(currentIndex - 1, true);
}
}
}
}
/**
*
*/
private class PageChangeListener implements OnPageChangeListener {
@Override
public void onPageSelected(int index) {
currentIndex = index;
refreshHandler.sendEmptyMessage(index);
}
@Override
public void onPageScrolled(int arg0, float arg1, int arg2) {
}
@Override
public void onPageScrollStateChanged(int arg0) {
}
}
/**
*
*/
protected void refreshIndicateView() {
this.refreshTime = System.currentTimeMillis();
for (int index = 0; index < totelCount; index++) {
final ImageView imageView = (ImageView) this.indicateLayout.getChildAt(index);
if (this.currentIndex == index) {
imageView.setBackgroundResource(R.drawable.image_indicator_focus);
} else {
imageView.setBackgroundResource(R.drawable.image_indicator);
}
}
if (INDICATE_USERGUIDE_STYLE == this.indicatorStyle) {// 操作指引不显示箭头
this.leftButton.setVisibility(View.GONE);
this.rightButton.setVisibility(View.GONE);
} else {// 显示箭头各状态
if (totelCount <= 1) {
leftButton.setVisibility(View.GONE);
rightButton.setVisibility(View.GONE);
} else if (totelCount == 2) {
if (currentIndex == 0) {
leftButton.setVisibility(View.VISIBLE);
rightButton.setVisibility(View.GONE);
} else {
leftButton.setVisibility(View.GONE);
rightButton.setVisibility(View.VISIBLE);
}
} else {
if (currentIndex == 0) {
leftButton.setVisibility(View.VISIBLE);
rightButton.setVisibility(View.GONE);
} else if (currentIndex == (totelCount - 1)) {
leftButton.setVisibility(View.GONE);
rightButton.setVisibility(View.VISIBLE);
} else {
leftButton.setVisibility(View.VISIBLE);
rightButton.setVisibility(View.VISIBLE);
}
}
}
if (this.onItemChangeListener != null) {// 页面改更了
try {
this.onItemChangeListener.onPosition(this.currentIndex, this.totelCount);
} catch (Exception e) {
e.printStackTrace();
}
}
}
public class MyPagerAdapter extends PagerAdapter {
private List<View> pageViews = new ArrayList<View>();
public MyPagerAdapter(List<View> pageViews) {
this.pageViews = pageViews;
}
@Override
public int getCount() {
return pageViews.size();
}
@Override
public boolean isViewFromObject(View arg0, Object arg1) {
return arg0 == arg1;
}
@Override
public int getItemPosition(Object object) {
return super.getItemPosition(object);
}
@Override
public void destroyItem(View arg0, int arg1, Object arg2) {
((ViewPager) arg0).removeView(pageViews.get(arg1));
}
@Override
public Object instantiateItem(View arg0, int arg1) {
((ViewPager) arg0).addView(pageViews.get(arg1));
return pageViews.get(arg1);
}
@Override
public void restoreState(Parcelable arg0, ClassLoader arg1) {
}
@Override
public Parcelable saveState() {
return null;
}
@Override
public void startUpdate(View arg0) {
}
@Override
public void finishUpdate(View arg0) {
}
}
}
class ScrollIndicateHandler extends Handler {
private ImageIndicatorView scrollIndicateView;
public ScrollIndicateHandler(ImageIndicatorView scrollIndicateView) {
this.scrollIndicateView = scrollIndicateView;
}
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
if (this.scrollIndicateView != null) {
scrollIndicateView.refreshIndicateView();
}
}
}

@ -0,0 +1,44 @@
package com.app.library.common.view.sample;
import com.app.library.common.view.AutoImageIndicatorView;
import com.app.library.common.view.ImageIndicatorView;
import com.example.androidimageindicator.R;
import android.app.Activity;
import android.os.Bundle;
public class AutoScrollIndicateActivity extends Activity {
private AutoImageIndicatorView scrollIndicateView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_indicator_auto);
scrollIndicateView = (AutoImageIndicatorView) findViewById(R.id.auto_scroll_indicate_view);
scrollIndicateView.setOnItemChangeListener(new ImageIndicatorView.OnItemChangeListener() {
@Override
public void onPosition(int position, int totalCount) {
}
});
scrollIndicateView.setOnItemChangeListener(new ImageIndicatorView.OnItemChangeListener() {
@Override
public void onPosition(int position, int totalCount) {
}
});
initView();
}
private void initView() {
final Integer[] resArray = new Integer[] { R.drawable.ic_launcher, R.drawable.ic_launcher };
scrollIndicateView.setBroadcastEnable(true);
scrollIndicateView.setBroadCastTimes(5);//循环播放5次
scrollIndicateView.setBroadcastTimeIntevel(2 * 1000, 3 * 1000);//播放启动时间及间隔
scrollIndicateView.setupLayoutByDrawable(resArray);//图片
scrollIndicateView.show();
}
}

@ -0,0 +1,34 @@
package com.app.library.common.view.sample;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import com.example.androidimageindicator.R;
public class SampleActivity extends Activity implements OnClickListener {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
findViewById(R.id.button1).setOnClickListener(this);
findViewById(R.id.button2).setOnClickListener(this);
findViewById(R.id.button3).setOnClickListener(this);
}
@Override
public void onClick(View v) {
final int resId = v.getId();
if (resId == R.id.button1) {
startActivity(new Intent(this, ScrollIndicateActivity.class));
} else if (resId == R.id.button2) {
startActivity(new Intent(this, AutoScrollIndicateActivity.class));
} else if (resId == R.id.button3) {
}
}
}

@ -0,0 +1,40 @@
package com.app.library.common.view.sample;
import com.app.library.common.view.ImageIndicatorView;
import com.example.androidimageindicator.R;
import android.app.Activity;
import android.os.Bundle;
public class ScrollIndicateActivity extends Activity {
private ImageIndicatorView scrollIndicateView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_indicator);
this.scrollIndicateView = (ImageIndicatorView) findViewById(R.id.scroll_indicate_view);
this.scrollIndicateView.setOnItemChangeListener(new ImageIndicatorView.OnItemChangeListener() {
@Override
public void onPosition(int position, int totalCount) {
}
});
this.scrollIndicateView.setOnItemChangeListener(new ImageIndicatorView.OnItemChangeListener() {
@Override
public void onPosition(int position, int totalCount) {
}
});
this.initView();
}
private void initView() {
final Integer[] resArray = new Integer[] { R.drawable.ic_launcher, R.drawable.ic_launcher };
this.scrollIndicateView.setupLayoutByDrawable(resArray);
this.scrollIndicateView.setIndicateStyle(ImageIndicatorView.INDICATE_USERGUIDE_STYLE);
this.scrollIndicateView.show();
}
}
Loading…
Cancel
Save