안 드 로 이 드 의 가장 간단 한 라운드 맵 실현
5842 단어 Android
레 퍼 런 스http://www.cnblogs.com/xurui1995/p/5759371.html박문
xml 레이아웃
Drawable 아래 에 Drawable resource file 3 개 를 새로 만 듭 니 다.
bg_shape
bg_shape2
selector
-
-
다음은 전체 코드 입 니 다.
package com.example.playpicture;
import android.os.Bundle;
import android.support.v4.view.PagerAdapter;
import android.support.v4.view.ViewPager;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageView;
import android.widget.LinearLayout;
import java.util.ArrayList;
/**
* Activity
*/
public class MainActivity extends AppCompatActivity implements ViewPager.OnPageChangeListener{
private ViewPager vp;
private int[] imas;
private LinearLayout ll;
private ArrayList imaList;
private Boolean flag;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//
initViews();
//
initData();
//
initAdapter();
flag=true;
//
new Thread(new Runnable() {
@Override
public void run() {
while (flag) {
try {
Thread.sleep(2000);
} catch (InterruptedException e) {
e.printStackTrace();
}
// MainActivity.this context
MainActivity.this.runOnUiThread(new Runnable() {
@Override
public void run() {
vp.setCurrentItem(vp.getCurrentItem() + 1);
}
});
}
}
}).start();
}
private void initAdapter() {
ll.getChildAt(0).setEnabled(true);
vp.setAdapter(new MyAdapter());
vp.setCurrentItem(Integer.MAX_VALUE/2+2);// %5 0 , 0 item
}
@Override
protected void onDestroy() {
super.onDestroy();
flag=false;
}
private void initData() {
}
private void initViews() {
vp = (ViewPager) findViewById(R.id.vp);
vp.setOnPageChangeListener(this);
ll= (LinearLayout) findViewById(R.id.point_container);
// ,
imas = new int[]{R.drawable.pic1, R.drawable.pic2, R.drawable.pic3, R.drawable.pic4, R.drawable.pic5,};
ImageView iv;
imaList = new ArrayList();
View pointview;
for (int i = 0; i < imas.length; i++) {
iv = new ImageView(this);
iv.setImageResource(imas[i]);
imaList.add(iv);
//
pointview =new View(this);
pointview.setEnabled(false);
pointview.setBackgroundResource(R.drawable.selector);
LinearLayout.LayoutParams params =new LinearLayout.LayoutParams(15,15);
//params.gravity= Gravity.CENTER;
if(i!=0)
params.leftMargin=10;
ll.addView(pointview,
params );
}
}
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
}
@Override
public void onPageSelected(int position) {
for(int i=0;i
이것 이 바로 가장 간단 한 라운드 맵 실현 이다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Bitrise에서 배포 어플리케이션 설정 테스트하기이 글은 Bitrise 광고 달력의 23일째 글입니다. 자체 또는 당사 등에서 Bitrise 구축 서비스를 사용합니다. 그나저나 며칠 전 Bitrise User Group Meetup #3에서 아래 슬라이드를 발표했...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.