WearableListView是适用于android小型设备如智能手表显示列表的组件,可以村子滚动,非常方便的在只能手表上显示列表控件,每次显示三个列表在屏幕中间位置。

它继承RecyclerView,实现了OnScrollListener接口。

public class WearableListView extends android.support.v7.widget.RecyclerView           implements android.support.v7.widget.RecyclerView.OnScrollListener {    ….  ….}
下面是使用的例子

Android Wear 控件——WearableListView(附Demo)_第1张图片

package com.technotalkative.wearablelistviewdemo; import android.app.Activity;import android.content.Context;import android.os.Bundle;import android.support.wearable.view.WatchViewStub;import android.support.wearable.view.WearableListView;import android.view.LayoutInflater;import android.view.ViewGroup;import android.widget.TextView; import java.util.ArrayList; public class SimpleListActivity extends Activity implements WearableListView.ClickListener{     private WearableListView mListView;     @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_my);        final WatchViewStub stub = (WatchViewStub) findViewById(R.id.watch_view_stub);        stub.setOnLayoutInflatedListener(new WatchViewStub.OnLayoutInflatedListener() {            @Override            public void onLayoutInflated(WatchViewStub stub) {                mListView = (WearableListView) stub.findViewById(R.id.listView1);                mListView.setAdapter(new MyAdapter(SimpleListActivity.this));                mListView.setClickListener(SimpleListActivity.this);            }        });    }     private static ArrayList listItems;    static {        listItems = new ArrayList();        listItems.add("Monday");        listItems.add("Tuesday");        listItems.add("Wednesday");        listItems.add("Thursday");        listItems.add("Friday");        listItems.add("Saturday");    }     @Override    public void onClick(WearableListView.ViewHolder viewHolder) {     }     @Override    public void onTopEmptyRegionClick() {     }     private class MyAdapter extends WearableListView.Adapter {        private final LayoutInflater mInflater;         private MyAdapter(Context context) {            mInflater = LayoutInflater.from(context);        }         @Override        public WearableListView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {            return new WearableListView.ViewHolder(                    mInflater.inflate(R.layout.row_simple_item_layout, null));        }         @Override        public void onBindViewHolder(WearableListView.ViewHolder holder, int position) {            TextView view = (TextView) holder.itemView.findViewById(R.id.textView);            view.setText(listItems.get(position).toString());            holder.itemView.setTag(position);        }         @Override        public int getItemCount() {            return listItems.size();        }    }}


可以为该列表加入图标,更加漂亮

Android Wear 控件——WearableListView(附Demo)_第2张图片

private final class MyItemView extends FrameLayout implements WearableListView.Item {         final CircledImageView imgView;        final TextView txtView;        private float mScale;        private final int mFadedCircleColor;        private final int mChosenCircleColor;         public MyItemView(Context context) {            super(context);            View.inflate(context, R.layout.row_advanced_item_layout, this);            imgView = (CircledImageView) findViewById(R.id.image);            txtView = (TextView) findViewById(R.id.text);            mFadedCircleColor = getResources().getColor(android.R.color.darker_gray);            mChosenCircleColor = getResources().getColor(android.R.color.holo_blue_dark);        }         @Override        public float getProximityMinValue() {            return mDefaultCircleRadius;        }         @Override        public float getProximityMaxValue() {            return mSelectedCircleRadius;        }         @Override        public float getCurrentProximityValue() {            return mScale;        }         @Override        public void setScalingAnimatorValue(float value) {            mScale = value;            imgView.setCircleRadius(mScale);            imgView.setCircleRadiusPressed(mScale);        }         @Override        public void onScaleUpStart() {            imgView.setAlpha(1f);            txtView.setAlpha(1f);            imgView.setCircleColor(mChosenCircleColor);        }         @Override        public void onScaleDownStart() {            imgView.setAlpha(0.5f);            txtView.setAlpha(0.5f);            imgView.setCircleColor(mFadedCircleColor);        }    }

下面的连接是该demo的完整工程 WearableListView Demo




更多相关文章

  1. android中从图库中选取图片
  2. 一个Demo让你掌握所有的android控件
  3. Android使用libjpeg实现图片压缩
  4. android访问网络,下载图片,并设置UI
  5. Android Retrofit与Spring后台配合,实现单张、多张图片上传功能
  6. Android 强大的图片加载缓存— Glide
  7. 让 Android 可以识别BMP图片文件,且目前Android所支持的所有图片
  8. Android中自定义控件

随机推荐

  1. eclipse 配置android
  2. android EditText使用指南
  3. [Android] 仿IOS实现自定义Dialog,底部弹
  4. android操作系统默认的图片
  5. 第十周智能手机开发学习笔记
  6. Android 对话框【Dialog】去除白色边框代
  7. android 用UDP做的心跳连接 小示例
  8. android 检测耳机是否插入
  9. TableLayout
  10. 手把手教你怎么去除Android(安卓)APP里面