相关疑难解决方法(0)

Android:在ScrollView停止滚动时检测

ScrollView在Android中使用了一个,其中可见部分的ScrollView大小与其中一个单元格的大小相同Scrollview.每个"细胞"都是相同的高度.因此,我想要做的是ScrollView在滚动后捕捉到位置.

目前我正在检测用户何时触摸,ScrollView以及何时开始滚动并从那里开始工作,但它非常错误.当用户只是轻弹它并滚动然后减速时,它也需要工作.

在iPhone上有一个类似的功能,didDecelerateScrollView完成滚动后我可以做任何我想要的代码.Android有这样的东西吗?或者是否有一些我可以看到的代码来找出更好的方法呢?

我查看了Android文档,找不到类似的东西.

android scrollview

82
推荐指数
7
解决办法
8万
查看次数

如何检测Android ListView滚动停止?

我想OnScrollListener#onScrollStateChanged(SCROLL_STATE_IDLE)在滚动停止后做一些事情.所以,我尝试使用来检测滚动停止的时间(或者TOUCH_SCROLL or FLING)(在1.5时它按预期运行).但是当它在2.0上运行时,onScrollStateChanged在释放finger之后无法接收到该事件.是否有任何回调或者无论如何都要检测到该事件?

android listview scroll

27
推荐指数
2
解决办法
4万
查看次数

Android setError()消息在ActionBar上滚动

我的问题是我的EditTexts中的错误消息在操作栏的顶部滚动.这是一个安卓漏洞,还是我做错了什么?

即使键盘关闭,这个错误也会发生,它恰好出现在屏幕截图中.

这就是我所说的:http://imgur.com/fG8bd3E,uFzhOXa#1 < - 有两个图像

这是我的布局,我将代码中的EditTexts添加到kiosk_form_table LinearLayout

<ScrollView
    style="@style/DefaultBackground"
    android:layout_width="0dp"
    android:layout_height="match_parent"
    android:layout_weight="0.6"
    android:fadeScrollbars="false"
    android:padding="20dp" >

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical"
        android:paddingRight="20dp" >

        <LinearLayout
            android:id="@+id/kiosk_form_table"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="vertical" />

        <Button
            android:id="@+id/kiosk_submit_large"
            style="@style/LoginButton"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:onClick="submit"
            android:text="@string/submit" />
    </LinearLayout>
</ScrollView>
Run Code Online (Sandbox Code Playgroud)

我如何添加EditTexts

kiosk_form.addView(getKioskRow(R.layout.kiosk_text_row, "First Name", true, null));
Run Code Online (Sandbox Code Playgroud)

private View getKioskRow(int layout, String header, boolean required, String buttonName)
{
    LayoutInflater inflater = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);
    View view = inflater.inflate(layout, null);
    view.setTag(required);
    addHeader((TextView) inflater.inflate(R.layout.field_header, null), header);
    if (required)
        ((TextView) view.findViewById(R.id.kiosk_input)).setHint("Required");
    if (buttonName …
Run Code Online (Sandbox Code Playgroud)

android android-edittext

11
推荐指数
1
解决办法
3843
查看次数

如何检测Horizo​​ntalScrollView已到达终点

我希望当到达结束时,右键会改变颜色,当到达开始时,左键会改变颜色,所以,我想问一下如何检测Horizo​​ntalScrollView已经到了结尾.

android horizontalscrollview

6
推荐指数
1
解决办法
4714
查看次数

ScaleGestureDetector.OnScaleGestureListener.onScaleEnd()方法没有被击中

更新:我弄清楚发生了什么.看评论.

我正在尝试编写一个ViewSwitcher,它将所有手势传递给它的第一个孩子,直到它收到一个缩放手势; 然后它将它们传递给它的第二个孩子,直到那个孩子完全缩小,当它恢复到第一个孩子时.我的子类有一个ScaleGestureDetector,我做了一个非常简单的监听器:

    protected class OnScaleModeSwitcher implements ScaleGestureDetector.OnScaleGestureListener
    {
        protected PageFlipSwitcher owner;

        public OnScaleModeSwitcher(PageFlipSwitcher newOwner)
        {
            super();
            owner = newOwner;
        }

        @Override
        public boolean onScale(ScaleGestureDetector detector) {
            return false;
        }

        @Override
        public boolean onScaleBegin(ScaleGestureDetector detector) {
            owner.onScaleBegin();
//returning false here causes the rest of the gesture to be ignored.
            return false;
        }

        @Override
        public void onScaleEnd(ScaleGestureDetector detector) {
            owner.onScaleEnd();
        }
    }
Run Code Online (Sandbox Code Playgroud)

正如您所看到的,它所做的就是在构造时引用所有者对象,然后将一些事件传递给所有者类中的方法.但是,代码未访问onScaleEnd().

我知道onInterceptTouchEvent可能有点冒险; 我尽可能地按照Android文档中的建议进行操作

    @Override
    public boolean onInterceptTouchEvent(MotionEvent ev)
    {
        onTouchEvent(ev);
        return false;
    }

    @Override
    public boolean onTouchEvent(MotionEvent ev)
    { …
Run Code Online (Sandbox Code Playgroud)

android callback scale gesturedetector

5
推荐指数
1
解决办法
4102
查看次数

运动事件android的速度或加速度

是否可以使用现有的api获取android中触摸事件的速度或速度或加速度?我已经浏览了MotionEvent类,该类中的任何字段似乎都没有检索到我需要的信息.任何帮助将不胜感激

performance android velocity touch acceleration

4
推荐指数
1
解决办法
6588
查看次数