前提・実現したいこと
横スクロールをしたときに、中途半端なところでボタンが止まらず、画面の中心に止まるようにしたいです。
(スナップと言うんでしょうか…)
イメージは横スクロールのモード選択みたいな感じです。
発生している問題・エラーメッセージ
横スクロールはHorizontalScrollViewを使用し、完成しましたが そこからどのようにコードを組めば上の実現したいことができるのかわからなくて困っています。
該当のソースコード
MainActivity
1 2public class MainActivity extends AppCompatActivity { 3 4 @Override 5 protected void onCreate(Bundle savedInstanceState) { 6 super.onCreate(savedInstanceState); 7 setContentView(R.layout.activity_main); 8 } 9}
activitymain
1<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" 2 xmlns:app="http://schemas.android.com/apk/res-auto" 3 xmlns:tools="http://schemas.android.com/tools" 4 android:layout_width="match_parent" 5 android:layout_height="match_parent" 6 tools:context=".MainActivity"> 7 8 <ImageView 9 android:layout_width="match_parent" 10 android:layout_height="match_parent" 11 android:scaleType="centerCrop" 12 android:src="@drawable/haikei" /> 13 14 <HorizontalScrollView 15 android:layout_width="match_parent" 16 android:layout_height="match_parent" 17 tools:layout_editor_absoluteX="172dp" 18 tools:layout_editor_absoluteY="136dp"> 19 20 <LinearLayout 21 android:layout_width="wrap_content" 22 android:layout_height="match_parent" 23 android:gravity="center" 24 android:orientation="horizontal" 25 android:paddingLeft="50dp" 26 android:paddingRight="50dp"> 27 28 <ImageButton 29 android:id="@+id/imageButton" 30 android:layout_width="298dp" 31 android:layout_height="445dp" 32 android:layout_marginEnd="50dp" 33 android:layout_weight="1" 34 android:background="#00000000" 35 android:scaleType="fitXY" 36 app:srcCompat="@drawable/a" /> 37 38 <ImageButton 39 android:id="@+id/imageButton2" 40 android:layout_width="298dp" 41 android:layout_height="445dp" 42 android:layout_marginEnd="50dp" 43 android:layout_weight="1" 44 android:background="#00000000" 45 android:scaleType="fitXY" 46 app:srcCompat="@drawable/b" /> 47 48 <ImageButton 49 android:id="@+id/imageButton3" 50 android:layout_width="298dp" 51 android:layout_height="445dp" 52 android:layout_marginEnd="50dp" 53 android:layout_weight="1" 54 android:background="#00000000" 55 android:scaleType="fitXY" 56 app:srcCompat="@drawable/c" /> 57 58 <ImageButton 59 android:id="@+id/imageButton4" 60 android:layout_width="298dp" 61 android:layout_height="445dp" 62 android:layout_marginEnd="50dp" 63 android:layout_weight="1" 64 android:background="#00000000" 65 android:scaleType="fitXY" 66 app:srcCompat="@drawable/d" /> 67 68 <ImageButton 69 android:id="@+id/imageButton5" 70 android:layout_width="298dp" 71 android:layout_height="445dp" 72 android:layout_marginEnd="50dp" 73 android:layout_weight="1" 74 android:background="#00000000" 75 android:scaleType="fitXY" 76 app:srcCompat="@drawable/e" /> 77 78 <ImageButton 79 android:id="@+id/imageButton6" 80 android:layout_width="298dp" 81 android:layout_height="445dp" 82 android:layout_marginEnd="50dp" 83 android:layout_weight="1" 84 android:background="#00000000" 85 android:scaleType="fitXY" 86 app:srcCompat="@drawable/f" /> 87 88 <ImageButton 89 android:id="@+id/imageButton7" 90 android:layout_width="298dp" 91 android:layout_height="445dp" 92 android:layout_marginEnd="50dp" 93 android:layout_weight="1" 94 android:background="#00000000" 95 android:scaleType="fitXY" 96 app:srcCompat="@drawable/g" /> 97 98 99 </LinearLayout> 100 </HorizontalScrollView> 101 102</androidx.constraintlayout.widget.ConstraintLayout> 103
補足情報(FW/ツールのバージョンなど)
javaで作成しています。
インターネットで同じようなことに挑戦しているサイトはいくつかありましたが、理解が追い付かず自分のコードに落とし込めない初心者です。
大変申し訳ないですが、丁寧に説明いただくとありがたいです。
よろしくお願いいたします。
回答1件
あなたの回答
tips
プレビュー