gpt4 book ai didi

android - 简单滚动不起作用

转载 作者:行者123 更新时间:2023-11-30 03:27:26 24 4
gpt4 key购买 nike

您好,我有一个简单的程序,其中包含一个简单的 ScrollView ,例如 android 默认计算器。
当用户滚动超过偏移值时,我想将其滚动到向右或向左完成。
但这是行不通的。
当我使用 myh.scrollBy(max, 0);什么都没有真正改变。

主要 Activity

public class MainActivity extends Activity {
int pos=0;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

final HorizontalScrollView myh= (HorizontalScrollView) findViewById(R.id.myhview);
myh.setOnTouchListener(new OnTouchListener() {

@Override
public boolean onTouch(View arg0, MotionEvent arg1) {
int xpos= myh.getScrollX();
int max=640;
if((xpos>50 && pos==0) || (pos==640 && xpos>590)){
pos=640;
myh.scrollBy(max, 0);
}
if((xpos<590 && pos==640) || ( pos==0 && xpos<50) ){
pos=0;
myh.scrollBy(0, 0);
}
return false;
}
});
}
}

而xml是

<HorizontalScrollView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="50dp"
android:id="@+id/myhview"

>

<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal" >
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/a01_text" />

<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/a00_text" />

<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/a00_text" />

<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/a00_text" />

<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/a00_text" />

<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/a00_text" />


<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/a00_text" />

<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/a00_text" />

<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/a00_text" />

<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/a00_text" />

<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/a00_text" />

<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/a00_text" />

<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/a00_text" />

<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/a00_text" />

<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/a00_text" />

<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/a02_text" />
</LinearLayout>
</HorizontalScrollView>

</LinearLayout>

最佳答案

每当您想向左或向右滚动时,请尝试类似以下的操作:

horizontalScrollView.post(new Runnable() {
public void run() {
horizontalScrollView.fullScroll(HorizontalScrollView.FOCUS_RIGHT); //Can also be FOCUS_LEFT
}
});

关于android - 简单滚动不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18023699/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com