我正在使用包含Image和TextView作为Item的View Pager。 View Pager的布局我已在下面显示。我希望TextView仅在5秒后出现在图像上方。当用户再次滑动屏幕时,应该花5秒钟让textview出现在该特定位置。我使用倒计时器在5秒后使TextView出现在图像上。
问题:问题是TextView在ViewPager的相邻页面上变得可见。例如,假设我处于位置0,则文本视图应在5秒后出现在图像上的位置0,但文本视图出现在ViewPager的位置1而不是出现在位置0。
请帮忙。
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#FFFFFF">
<FrameLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<ImageView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/imageViewFashion"
android:scaleType="fitCenter"
android:src="@drawable/kurti_1_1"
/>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Price : "
android:textColor="#000"
android:textSize="20sp"
android:visibility="visible"
android:id="@+id/pricetextView" />
</FrameLayout>
</RelativeLayout>
我的适配器类
@Override
public Object instantiateItem(ViewGroup container, int position) {
mInflater = (LayoutInflater) mContext
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View itemView = mInflater.inflate(R.layout.list_item_horizontal_viewpager, container,
false);
// Locate the ImageView in list_item_horizontal_viewpagerpager.xml
mImageView = (ImageView)itemView.findViewById(R.id.imageViewFashion);
priceText = (TextView)itemView.findViewById(R.id.pricetextView);
priceText.setVisibility(View.GONE);
price = position + 10; // DUMMY in value
if(cdt != null) {
cdt.cancel();
cdt = null;
}
cdt = new CountDownTimer(5000, 1000) {
@Override
public void onTick(long millisUntilFinished) {
Log.d("CountDOunTimer" , + millisUntilFinished/1000 + "");
}
@Override
public void onFinish() {
Toast.makeText(mContext, "Hello finished", Toast.LENGTH_SHORT).show();
Log.d("CountDOunTimer" , "on Finish ");
priceText.setVisibility(View.VISIBLE);
priceText.setText("" + String.valueOf(price));
}
}.start();
// Add list_item_horizontal_viewpagerpager.xml to ViewPager .
container.addView(itemView);
return itemView;
}