我在HorizontalScrollView中有LinearLayout。
<?xml version="1.0" encoding="utf-8"?>
<HorizontalScrollView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/hsv"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<LinearLayout
android:id="@+id/mygallery"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:orientation="horizontal" >
</LinearLayout>
</HorizontalScrollView>
在LinearLayout中,我按以下方式加载图片:
myGallery = (LinearLayout) findViewById(R.id.mygallery);
for (int i = 1; i <= 5; i++) {
ImageView iv = new ImageView(getApplicationContext());
iv.setLayoutParams(new LayoutParams(screenWidth,LayoutParams.WRAP_CONTENT));
iv.setImageBitmap(decodeSampledBitmapFromResource(getResources(),getResources().getIdentifier("pic0" + i, "drawable",getPackageName()), screenWidth, screenHeight));
myGallery.addView(iv);
当用户滚动图像时,我需要锁定居中的图像(如Gallery
)
答案 0 :(得分:0)
您应该使用smoothScrollTo(x,y)
,这样图像就会锁定在正确的位置。 X和Y应手动计算。
答案 1 :(得分:0)
这是我的解决方案: 1.创建自定义视图
<com.shouhu.angel.view.CenteringHorizontalScrollView
android:id="@+id/horizontalScrollView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@mipmap/tool_f_top_bg"
android:scrollbars="none">
<LinearLayout
android:id="@+id/tools_top"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:gravity="center"
android:orientation="horizontal">
</LinearLayout>
</com.shouhu.angel.view.CenteringHorizontalScrollView>
2.在活动/片段中
{{1}}
3.在xml中
{{1}}