Android   发布时间:2022-04-28  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了Android开发之机顶盒上gridview和ScrollView的使用详解大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

最近在机顶盒上做一个gridview,

Android开发之机顶盒上gridview和ScrollView的使用详解

其焦点需要在item的子控件上,但gridview的焦点认在item上,通过
android:descendantFocusability="afterDescendants"

<ScrollView
android:id="@+id/scroll_content"
android:layout_width="1740.0px"
android:layout_height="600.0px"
android:layout_x="81.0px"
android:layout_y="258.0px" >
<com.hysmarthotel.view.MyGridView
android:id="@+id/lightview"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:descendantFocusability="afterDescendants"
android:horizontalSpacing="58dp"
android:numcolumns="4"
android:scrollbars="none"
android:stretchMode="columnWidth"
android:verticalSpacing="80dp" />
</ScrollView> 

可以让gridview的子控件获得焦点。但是加了这个属性之后,gridview就会变得无法滚动,后来我就给gridview加了一个ScrollView,

但由于它们两个都有滚动条,所以我重写了一个gridview,让其滚动条消失。终于成功地让gridview可以一直让子控件获得焦点,并且可以顺利滚动。

package com.hysmarthotel.view;
import android.content.Context;
import android.util.AttributeSet;
import android.widget.GridView;
public class MyGridView extends GridView { 
public MyGridView(Context context,AttributeSet attrs) { 
super(context,attrs); 
} 
public MyGridView(Context context) { 
super(context); 
} 
public MyGridView(Context context,AttributeSet attrs,int defStylE) { 
super(context,attrs,defStylE); 
} 
@Override 
public void onMeasure(int widthMeasureSpec,int heightMeasureSpeC) { 
int expandSpec = MeasureSpec.makeMeasureSpec( 
Integer.max_value >> 2,MeasureSpec.AT_MOST); 
super.onMeasure(widthMeasureSpec,expandSpec); 
} 
}

ps:我的布局是绝对布局,以及关于item的布局和adapter的代码没什么特别的。checkBox焦点等级很高。

以上内容给大家介绍了Android开发之机顶盒上gridview和ScrollView的使用详解,希望对大家有所帮助!

大佬总结

以上是大佬教程为你收集整理的Android开发之机顶盒上gridview和ScrollView的使用详解全部内容,希望文章能够帮你解决Android开发之机顶盒上gridview和ScrollView的使用详解所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。