安卓TV开发(六) 移动智能终端UI之实现类似GridView的焦点控制FocusView框架

 载请标明出处:http://blog.csdn.net/sk719887916/article/details/40045089,作者:skay

前言

安卓TV开发(五) 移动智能终端UI之实现主流TV视频播放器UI  结尾发现View还是存在缺陷,上文就发现,因为没有adapter,导致FoucusView的代码繁琐,并且也不符合

一个集合框架(listView,GridView)的开发习惯和实现逻辑。本篇会通过FcousView和Adapter结合,完成高效的UI框架,使得开发者自定义宽高,翻页动画,显示可见条数,

和子item布局。 想必大家对gridView已经熟悉的滚瓜烂熟了,用到类似集合的视图控件,我们就会想到适配器,首先就来定义一个适配器 FocusAdapter。其中的子ItemView随

我们自己定义,不但支持一张图片,而且支持复杂的view,包括文字和图片,或者安卓自带的更高级的控件充当子view

一 新建Adapter

<span style="font-family: Arial, Helvetica, sans-serif;">public class FocusAdapter extends BaseAdapter {</span>
	
	private List<TvModle> mLists;
	
	private Context mContext;
	
	
	

	public FocusAdapter(List<TvModle> mLists, Context mContext) {
		super();
		this.mLists = mLists;
		this.mContext = mContext;
	}

	@Override
	public int getCount() {
		// TODO Auto-generated method stub
		return mLists.size();
	}

	@Override
	public TvModle getItem(int position) {
		// TODO Auto-generated method stub
		return mLists.get(position);
	}

	@Override
	public long getItemId(int position) {
		// TODO Auto-generated method stub
		return -1;
	}

	@SuppressLint("NewApi")
	@Override
	public View getView(int position, View convertView, ViewGroup parent) {
		
		/*LayoutInflater mInflater = LayoutInflater.from(mContext);
		View view  = mInflater.inflate(
				R.layout.layout_focus_item,parent);
		ImageView mImageView = (ImageView) view.findViewById(R.id.photo);
		TextView mTextView = (TextView) view.findViewById(R.id.title);
		mImageView.setBackgroundResource(mLists.get(position).getImage());
		mTextView.setText(mLists.get(position).getName());*/
		return null;
	}

 接下来为FocusView也需要setData和setAdapter方法 FocusView内部定义 FocusAdapter mAdapter为成员属性。



                
  • 5
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值