相关疑难解决方法(0)

ScrollView Touch Handling中的Horizo​​ntalScrollView

我有一个ScrollView环绕我的整个布局,以便整个屏幕可滚动.我在这个ScrollView中的第一个元素是一个Horizo​​ntalScrollView块,它具有可以水平滚动的功能.我在horizo​​ntalscrollview中添加了一个ontouchlistener来处理触摸事件并强制视图"捕捉"到ACTION_UP事件上最近的图像.

所以我想要的效果就像股票android主屏幕,你可以从一个滚动到另一个,当你举起手指时,它会捕捉到一个屏幕.

这一切都很有效,除了一个问题:我需要从左到右几乎完全水平滑动,以便ACTION_UP进行注册.如果我至少垂直滑动(我认为许多人往往会在他们的手机上左右滑动),我会收到ACTION_CANCEL而不是ACTION_UP.我的理论是,这是因为横向视图滚动视图位于滚动视图内,并且滚动视图正在劫持垂直触摸以允许垂直滚动.

如何在水平滚动视图中禁用滚动视图的触摸事件,但仍允许在滚动视图中的其他位置正常垂直滚动?

这是我的代码示例:

   public class HomeFeatureLayout extends HorizontalScrollView {
    private ArrayList<ListItem> items = null;
    private GestureDetector gestureDetector;
    View.OnTouchListener gestureListener;
    private static final int SWIPE_MIN_DISTANCE = 5;
    private static final int SWIPE_THRESHOLD_VELOCITY = 300;
    private int activeFeature = 0;

    public HomeFeatureLayout(Context context, ArrayList<ListItem> items){
        super(context);
        setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT));
        setFadingEdgeLength(0);
        this.setHorizontalScrollBarEnabled(false);
        this.setVerticalScrollBarEnabled(false);
        LinearLayout internalWrapper = new LinearLayout(context);
        internalWrapper.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT));
        internalWrapper.setOrientation(LinearLayout.HORIZONTAL);
        addView(internalWrapper);
        this.items = items;
        for(int i = 0; i< items.size();i++){
            LinearLayout featureLayout = (LinearLayout) View.inflate(this.getContext(),R.layout.homefeature,null);
            TextView header = (TextView) …
Run Code Online (Sandbox Code Playgroud)

android horizontalscrollview ontouchlistener android-scrollview

224
推荐指数
7
解决办法
13万
查看次数

Scrollview在android中纵向和横向

我真的很想找到垂直和水平Scrollview的解决方案.

我读到框架中没有任何实现此功能的视图/布局,但我需要这样的东西:

我需要在其他内部定义布局,子布局必须实现滚动垂直/水平移动.

最初实现了一个逐像素移动布局的代码,但我认为这不是正确的方法.我尝试使用ScrollView和Horizo​​ntal ScrollView,但没有任何工作像我想要的那样,因为它只实现垂直或水平滚动.

Canvas不是我的解决方案,因为我需要在某些子元素中附加侦听器.

我能做什么?

android scrollview

146
推荐指数
8
解决办法
20万
查看次数

在列表视图中查看寻呼机?

我在listview项目中使用view pager.我想在视图寻呼机中显示图像,但延迟加载不能使用它.请给我任何解决方案.我尝试了很多延迟加载文件,但有些正在运行.有些人持有UI.

我现在使用的代码工作正常,但没有第一次显示图像.我必须向下滚动列表视图然后向上滚动然后才显示.我不知道有什么问题请给我解决一下我要做的事情?

我发布我的适配器代码: -

这是我的getview代码:

public View getView(final int position, View convertView, ViewGroup parent) {

        View v = convertView;
        if (v == null) {
            LayoutInflater mInflater = (LayoutInflater) objProp.activity
                    .getApplicationContext().getSystemService(
                            Context.LAYOUT_INFLATER_SERVICE);
            v = mInflater.inflate(R.layout.adapter_walllayout, null);
        }

        // Get Controls

        final viewHolder vh = new viewHolder();
        vh.txtview_Question = (TextView) v.findViewById(R.id.textView1);
        vh.textview_CommentCount = (TextView) v
                .findViewById(R.id.textVew_WallTotalComments);
        vh.textview_LikeCount = (TextView) v
                .findViewById(R.id.textVew_WallTotalokay);
        vh.ViewPager_Images = (ViewPager) v.findViewById(R.id.pager);
        vh.imageview_Profile = (ImageView) v
                .findViewById(R.id.imageview_userImage);
        vh.textview_PostDate = (TextView) v
                .findViewById(R.id.textView_PostDate);

        vh.textview_UserName = (TextView) v
                .findViewById(R.id.textVew_WallUserName);

        // …
Run Code Online (Sandbox Code Playgroud)

android listview lazy-loading android-viewpager

2
推荐指数
1
解决办法
8934
查看次数