Android ViewPager 옵션 전환 실현
STEP 1:낮은 버 전의 v4 패 키 지 를 호 환 하여 레이아웃 합 니 다.여기 eclipse 에 알림 을 입력 하지 않 았 기 때문에 수 동 으로 입력 해 야 합 니 다.파일 이름"activitymain.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"
tools:context=".MainActivity" >
<android.support.v4.view.ViewPager
android:id="@+id/viewpager"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
>
<android.support.v4.view.PagerTabStrip
android:id="@+id/tabstrip"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
/>
</android.support.v4.view.ViewPager>
</RelativeLayout>
단계 2:옵션 의 내용 은 모두 레이아웃 파일 에서 가 져 옵 니 다.그래서 저 는 두 개의 테스트 레이아웃'layout 1.xml'과'layout 2.xml'을 새로 만 들 었 습 니 다.그 내용 은 자 유 롭 습 니 다.단계 3:레이아웃 이 완료 되 었 습 니 다.MainActivity.java 클래스 에서 관건 적 인 기능 을 실현 합 니 다.
먼저 ViewPager 와 PagerTabStrip 대상 을 설명 하고 findViewById 를 통 해 각각 자원 id 를 찾 습 니 다.Array List
package com.example.viewpager;
import java.util.ArrayList;
import android.os.Bundle;
import android.app.Activity;
import android.graphics.Color;
import android.support.v4.view.PagerAdapter;
import android.support.v4.view.PagerTabStrip;
import android.support.v4.view.ViewPager;
import android.support.v4.view.ViewPager.OnPageChangeListener;
import android.view.Menu;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Toast;
public class MainActivity extends Activity implements OnPageChangeListener {
private ViewPager viewpager;
private PagerTabStrip tabstrip;
private String[] title={" "," "," "," "};
private ArrayList<View> views=new ArrayList<View>();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
viewpager=(ViewPager) findViewById(R.id.viewpager);
tabstrip=(PagerTabStrip) findViewById(R.id.tabstrip);
initial();
viewpager.setAdapter(new MyPagerAdapter());
}
public void initial(){
views.add(getLayoutInflater().inflate(R.layout.layout1,null));
views.add(getLayoutInflater().inflate(R.layout.layout2,null));
views.add(getLayoutInflater().inflate(R.layout.layout1,null));
views.add(getLayoutInflater().inflate(R.layout.layout2,null));
tabstrip.setBackgroundColor(getResources().getColor(android.R.color.holo_blue_light));
tabstrip.setTabIndicatorColor(getResources().getColor(android.R.color.holo_blue_bright));
tabstrip.setTextColor(Color.WHITE);
viewpager.setOnPageChangeListener(this);
}
class MyPagerAdapter extends PagerAdapter{
@Override
public int getCount() {
// TODO
return views.size();
}
@Override
public Object instantiateItem(ViewGroup container, int position) {
View v=views.get(position);
container.addView(v);
return v;
}
@Override
public void destroyItem(ViewGroup container, int position, Object object) {
// TODO
//super.destroyItem(container, position, object);
container.removeView(views.get(position));
}
@Override
public boolean isViewFromObject(View arg0, Object arg1) {
// TODO
return arg0==arg1;
}
@Override
public CharSequence getPageTitle(int position) {
// TODO
return title[position];
}
}
@Override
public void onPageScrollStateChanged(int arg0) {
// TODO
}
@Override
public void onPageScrolled(int arg0, float arg1, int arg2) {
// TODO
}
@Override
public void onPageSelected(int arg0) {
// TODO
//Toast.makeText(MainActivity.this," ",Toast.LENGTH_SHORT).show();
}
}
이상 이 바로 본 고의 전체 내용 이 고 앞으로 의 글 에서 계속 공부 할 문제 도 있 으 니 여러분 들 이 계속 관심 을 가 져 주시 기 바 랍 니 다.이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 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에 따라 라이센스가 부여됩니다.