【发布时间】:2013-04-16 13:16:42
【问题描述】:
我为列表视图行创建了嵌套视图。我也使用水平滚动视图在特定行中水平滚动。 但是在某些行中,我希望有从右到左的滚动功能。 我对此进行了搜索,发现了一些 smoothscrollto="20dp" 但它根本不起作用。
编辑过的文字
我在单击侦听器的图像视图中添加了holder.hv.smoothScrollTo(holder.hv.getRight(), holder.hv.getTop());,当我单击该图像视图时,我的水平滚动视图移至结束(右)..
我怎样才能在没有点击监听器的情况下滚动该特定行
这是我的代码
public View getView(int position, View convertView, ViewGroup parent) {
final ViewHolder holder;
int type = getItemViewType(position);
System.out.println("getView " + position + " " + convertView + " type = " + type);
if (convertView == null) {
holder = new ViewHolder();
switch (type) {
case 0:
convertView = inflater.inflate(R.layout.list_row1, null);
holder.hv = (HorizontalScrollView)convertView.findViewById(R.id.horizontalScrollView1);
holder.videoview1 = ((ImageView)convertView.findViewById(R.id.train).findViewById(R.id.boogi1).findViewById(R.id.imageView1));
Log.d("Listview", "front value is"+position);
holder.videoview1.setTag(position);
holder.videoview1.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
holder.hv.smoothScrollTo(holder.hv.getRight(), holder.hv.getTop());
}
});
break;
case 1:convertView = inflater.inflate(R.layout.list_row2, null);
holder.videoview1 = ((ImageView)convertView.findViewById(R.id.train2).findViewById(R.id.boogi2).findViewById(R.id.imageView1));
holder.videoview1.setTag(position);
holder.videoview1.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Toast.makeText(context, "you right clicked"+v.getTag() , Toast.LENGTH_SHORT).show();
}
});
break;
}
convertView.setTag(holder);
} else {
holder = (ViewHolder)convertView.getTag();
}
return convertView;
}
感谢任何帮助。 谢谢你
【问题讨论】:
标签: android android-layout android-scrollview