실제로 내 앱에 문제가 있습니다. 내 ViewPager 및 ViewPagerIndicator (http://viewpagerindicator.com/)이 표시되지 않고 그 이유를 알 수 없습니다. 모든 것을 여러 번 확인했는데 (어댑터를 올바르게 설정하고, instantiateItem의 뷰를 추가하고, getCount()에서 좋은 크기를 반환하는 등), XML에서 레이아웃 매개 변수를 변경하고, MyPagerAdapter 클래스를 다시 작성한 다음 몇 가지 작업을 시도했습니다. 심지어 구글과 여기 비슷한 문제를 찾고 있지만 아무것도 작동하지/내 문제가되지 않습니다.ViewPager 및 ViewPagerIndicator에 아무 것도 표시되지 않음
나는 또한 getCount()가 아니라 '정말 돈 3를 반환하는 동안 즉, 2 번 링크를 가지고 있지만, 내 PagerAdapter에서 instantiateItem 메소드 만 호출하면 모르는, 늪지가
즉 올 수있는 t은 누구 아이디어가있는 경우 내가 큰 기쁨과 함께 할게요, 알고 :
에서 OnCreate을합니다 (ViewPager & ViewPagerIndicator을 포함하는 활동) :
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_infos_vehicle);
title = (TextView) findViewById(R.id.title);
ll = (LinearLayout) findViewById(R.id.mygallery);
filenames = new ArrayList<String>();
[...]
MyPagerAdapter adapter = new MyPagerAdapter(getResources().getStringArray(R.array.infos_vehicle));
ViewPager pager = (ViewPager) findViewById(R.id.pager);
pager.setAdapter(adapter);
TitlePageIndicator indicator = (TitlePageIndicator) findViewById(R.id.titles_pager);
indicator.setFooterIndicatorStyle(IndicatorStyle.Triangle);
indicator.setViewPager(pager);
[...]
}
MyPagerAdapter 클래스 (3 회 사건은 여기에 있었다.
:개인 클래스 MyPagerAdapter가 {
private final String[] TITLES;
public MyPagerAdapter(String[] titles) {
TITLES = titles;
}
@Override
public int getCount() {
return (TITLES.length);
}
@Override
public Object instantiateItem(View collection, int position) {
LayoutInflater inflater = (LayoutInflater) getApplicationContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View v = null;
switch (position) {
case (0):
v = inflater.inflate(R.layout.linear_layout, null);
fillGeneral((ViewGroup) v.findViewById(R.id.layout));
break;
case (1):
v = inflater.inflate(R.layout.linear_layout, null);
fillEquipments((ViewGroup) v.findViewById(R.id.layout));
break;
case (2):
v = new ImageView(getApplicationContext());
((ImageView) v).setImageDrawable(getApplicationContext().getResources().getDrawable(android.R.drawable.alert_dark_frame));
break;
}
((ViewPager) collection).addView(v);
return (v);
}
@Override
public CharSequence getPageTitle(int position) {
return (TITLES[position]);
}
@Override
public void destroyItem(View collection, int position, Object view) {
((ViewPager) collection).removeView((View) view);
}
@Override
public boolean isViewFromObject(View arg0, Object arg1) {
return (arg0.equals(arg1));
}
@Override
public Parcelable saveState() {
return null;
}
}
그리고 활동 XML PagerAdapter를 확장 :이 엉망이 된 나의 fillGeneral 또는 fillEquipments 방법) 인 경우 더 볼 테스트 참조
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="fill_parent"
android:layout_height="wrap_content" >
<TextView
android:id="@+id/title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:layout_marginTop="10dp"
android:text="@string/hello_world"
android:textAppearance="?android:attr/textAppearanceLarge"
android:textColor="@color/first_color" />
<Button
android:id="@+id/try_vehicle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/title"
android:layout_centerHorizontal="true"
android:layout_marginTop="40dp"
android:onClick="tryingAlert"
android:text="@string/try_vehicle" />
<Button
android:id="@+id/ask_informations"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/try_vehicle"
android:layout_centerHorizontal="true"
android:layout_marginTop="20dp"
android:onClick="informationsAlert"
android:text="@string/ask_informations" />
<Button
android:id="@+id/remove_selection"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="removeFromSelection"
android:layout_below="@+id/ask_informations"
android:layout_centerHorizontal="true"
android:layout_marginTop="20dp"
android:text="@string/remove_selection" />
<HorizontalScrollView
android:id="@+id/scroll"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_below="@+id/remove_selection"
android:layout_marginTop="18dp"
android:scrollbars="none" >
<LinearLayout
android:id="@+id/mygallery"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal" >
</LinearLayout>
</HorizontalScrollView>
<com.viewpagerindicator.TitlePageIndicator
android:id="@+id/titles_pager"
android:layout_below="@id/scroll"
android:layout_height="wrap_content"
android:layout_width="fill_parent" />
<android.support.v4.view.ViewPager
android:id="@+id/pager"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_below="@id/titles_pager" />
</RelativeLayout>
</ScrollView>
나는 무엇을 제공 하는가? (Activity는 여기에서 끝나고 그림과 같이, ViewPagerIndicator는 아무것도 표시하지 않는다.) http://i.imgur.com/vRa1O.jpg (외부 링크, 미안 사진을 게시 할 수 없습니다)
계층 뷰를 사용하여 UI를 검사했을 때 무엇을 찾았습니까? – CommonsWare
@CommonsWare 그것은 내가보기를 원하는 것에 달려 있습니다. : d 저는 TitlePageIndicator를 포함하여 전 세계적으로 내 활동이 잘 표시되지만 ViewPager는 여전히 아이들 (그리고 2 명의 자녀 만, instantiateItem이 가정 됨)을 보여주지 않습니다 3을 만들 수 있습니다!). 어쨌든 당신이 저를 도와 주심에 감사드립니다. :) – Bhullnatik
좋아, 나는 TitleIndicator의 도구 였고, 기본 테마는 그냥 흰색으로 제공했기 때문에 배경과 함께 "보이지 않는"것이었다. [업데이트 된 UI] (http://i.imgur.com/bzf2Q.png) 편집 : 여기서는 볼 수 없지만 TitlePageIndicator는 3 개의 타이틀을 잘 보여줍니다. – Bhullnatik