Каждый значок равен 100X100 px. Всего 800X100 px.
У меня есть следующий ImageView xml:
<ImageView
android:id="@+id/CycleStageImage"
android:layout_width="100dp"
android:layout_height="100dp">
Я хотел бы установить CycleStageImage для отображения другого значка (100 100) по интервалу таймера 1 секунды назад и вперед.
У меня возникла проблема с созданием кода, который перемещается по оси этого PNG. Я пробовал следующие ссылки из нескольких ссылок на SOF, но не повезло:
//first try - not working
//Resources res = mainActivity.ApplicationContext.Resources;
//Bitmap bitmap = BitmapFactory.DecodeResource(res, Resource.Id.CycleImage);
//BitmapDrawable bitmapDrawable = new BitmapDrawable(Resources.System, bitmap);
//ClipDrawable clipDrawable = new ClipDrawable(bitmapDrawable, GravityFlags.Center, ClipDrawable.Horizontal);
//clipDrawable.SetBounds(100, 100, 100, 100);
//clipDrawable.SetLevel(100);
//imageView.SetImageResource(Android.Resource.Color.Transparent);
//imageView.SetImageDrawable(clipDrawable);
//second try - shows only part of the left top corner
//double TUNNING = 0.5; //0.5 cut in half
//Bitmap srcBmp = BitmapFactory.DecodeResource(Resources.System, cycleStage);
//Bitmap modBmp = Bitmap.CreateBitmap(
// srcBmp,
// 0,
// srcBmp.Height, // TUNNING
// srcBmp.Height,
// srcBmp.Height
// );
//third try - same as the second try.
//int START_X = 0;
//int START_Y = 100;
//int WIDTH_PX = 100;
//int HEIGHT_PX = 100;
//// Crop bitmap
//Bitmap newBitmap = Bitmap.CreateBitmap(SOURCE_BITMAP, START_X, START_Y, WIDTH_PX, HEIGHT_PX, null, false);
//// Assign new bitmap to ImageView
//imageView.SetImageBitmap(newBitmap);
Я следил за учебником Android: https://developer.android.com/guide/topics/resources/drawable-resource.html#Clip
но не повезло.. Было бы также полезно помочь с таймером, а также с png.
Спасибо!