租用问题

质量为本、客户为根、勇于拼搏、务实创新

< 返回租用问题列表

android滚动控件如何同步滚动 ,android 滑动控件

发布时间:2024-07-23 11:48:06

android转动控件如何同步转动

要实现Android转动控件的同步转动,可使用OnScrollListener接口来监听转动事件,然后通过scrollTo()scrollBy()方法来控制其他转动控件的转动位置。

以下是一个示例代码,实现了两个ListView控件的同步转动:

public class SyncedScrollActivity extends AppCompatActivity {
    private ListView listView1;
    private ListView listView2;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_synced_scroll);

        listView1 = findViewById(R.id.listView1);
        listView2 = findViewById(R.id.listView2);

        ArrayAdapter<String> adapter1 = new ArrayAdapter<>(this, android.R.layout.simple_list_item_1, getResources().getStringArray(R.array.items));
        ArrayAdapter<String> adapter2 = new ArrayAdapter<>(this, android.R.layout.simple_list_item_1, getResources().getStringArray(R.array.items));

        listView1.setAdapter(adapter1);
        listView2.setAdapter(adapter2);

        listView1.setOnScrollListener(new AbsListView.OnScrollListener() {
            @Override
            public void onScrollStateChanged(AbsListView view, int scrollState) {
            }

            @Override
            public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) {
                listView2.setSelectionFromTop(firstVisibleItem, 0);
            }
        });

        listView2.setOnScrollListener(new AbsListView.OnScrollListener() {
            @Override
            public void onScrollStateChanged(AbsListView view, int scrollState) {
            }

            @Override
            public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) {
                listView1.setSelectionFromTop(firstVisibleItem, 0);
            }
        });
    }
}

在上面的代码中,我们分别为两个ListView控件设置了相同的转动监听器,当一个ListView转动时,另外一个ListView会根据第一个的位置进行同步转动。

tiktok粉丝购买:https://www.smmfensi.com/