私はビューページャーとビューポートの下にあるいくつかのボタンを持っています。私はscrollviewの中に全体のレイアウトを追加しましたが、viewpagerのためscrollviewは機能しません。私は多くのカスタムスクロールビューとビューページのクラスを試みましたが、どれもうまくいきませんでした。それを行う方法はありますか、ビューページの代わりに別のものを使用する必要がありますか?私は画像を表示するためにビューページを使用しています。スクロールビュー内のAndroidビューページ
public class MainActivity extends AppCompatActivity {
private ViewPager viewPager;
MyPagerAdapter adapter;
private ArrayList<String> alName=new ArrayList<String>();
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
viewPager = (ViewPager) findViewById(R.id.viewpager);
alName.add("http://i.imgur.com/wre2PiR.jpg");
alName.add("http://i.imgur.com/BGGOhh1.jpg");
alName.add("http://i.imgur.com/XGCLH1M.jpg");
alName.add("http://i.imgur.com/kiPwp9I.jpg");
adapter = new MyPagerAdapter(MainActivity.this, alName);
viewPager.setAdapter(adapter);
} // onCreate ends
public class MyPagerAdapter extends PagerAdapter {
private Context mContext;
private ArrayList<String> arrayList=new ArrayList<String>();
MyPagerAdapter(Context context, ArrayList<String> jarr) {
this.mContext = context;
this.arrayList=jarr;
}
@Override
public int getCount() {
return arrayList.size();
}
@Override
public boolean isViewFromObject(View view, Object o) {
return view == o;
}
@Override
public Object instantiateItem(ViewGroup container, int position) {
ImageView view = new ImageView(container.getContext());
view.setScaleType(ImageView.ScaleType.CENTER_CROP);
Picasso.with(MainActivity.this).load(arrayList.get(position)).into(view);
container.addView(view);
return view;
}
@Override
public void destroyItem(ViewGroup container, int position, Object object) {
container.removeView((View) object);
}
}
}
レイアウトXML:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/rootLayout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<ScrollView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fillViewport="true">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<android.support.v4.view.ViewPager
android:id="@+id/viewpager"
android:layout_width="match_parent"
android:layout_height="match_parent"/>
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Button 1"/>
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Button 2"/>
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Button 3"/>
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Button 4"/>
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Button 5"/>
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Button 6"/>
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Button 7"/>
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Button 8"/>
</LinearLayout>
</ScrollView>
</LinearLayout>