Android: как отображать изображения с разной периодичностью? - PullRequest
0 голосов
/ 10 марта 2012

Я хочу отобразить несколько изображений с разными интервалами, на какое-то время я могу показывать картинки, но с одинаковыми интервалами, как это может сделать их показ с разными интервалами?например, первое изображение отображается 5 секунд, второе изображение - 7 секунд, третье изображение - 4 секунды и т. д. ... какие-либо идеи и / или примеры?

это моя деятельность, когда я показываю фотографии, но через равные интервалы:

public class WCourse extends Activity implements OnClickListener, OnTouchListener, OnCompletionListener, OnBufferingUpdateListener{

//mp3 player
private ImageButton buttonPlayPause;
private SeekBar seekBarProgress;
public EditText editTextSongURL;


public static TextView TextViewTopTitle;

//Slider
public int currentimageindex=0;
Timer timer;
TimerTask task;
ImageView slidingimage;

//images ids
private int[] IMAGE_IDS = {
        R.drawable.c5_d1, R.drawable.c5_d2, R.drawable.c5_d3, R.drawable.c5_d4, R.drawable.c5_d5,
        R.drawable.c5_d6, R.drawable.c5_d7, R.drawable.c5_d8, R.drawable.c5_d9, R.drawable.c5_d10,
        R.drawable.c5_d11, R.drawable.c5_d12, R.drawable.c5_d13, R.drawable.c5_d14, R.drawable.c5_d15,
        R.drawable.c5_d16, R.drawable.c5_d17, R.drawable.c5_d18, R.drawable.c5_d19, R.drawable.c5_d20,
        R.drawable.c5_d21, R.drawable.c5_d22, R.drawable.c5_d23, R.drawable.c5_d24, R.drawable.c5_d25,
        R.drawable.c5_d26, R.drawable.c5_d27, R.drawable.c5_d28, R.drawable.c5_d29, R.drawable.c5_d30,
        R.drawable.c5_d31, R.drawable.c5_d32, R.drawable.c5_d33, R.drawable.c5_d34, R.drawable.c5_d35,
        R.drawable.c5_d36, R.drawable.c5_d37, R.drawable.c5_d38, R.drawable.c5_d39, R.drawable.c5_d40,
        R.drawable.c5_d41, R.drawable.c5_d42, R.drawable.c5_d43, R.drawable.c5_d44, R.drawable.c5_d45,
        R.drawable.c5_d46
    };

//player    
private MediaPlayer mediaPlayer;
private int mediaFileLengthInMilliseconds; // this value contains the song duration in milliseconds. Look at getDuration() method in MediaPlayer class

//slider handler
private final Handler handler = new Handler();

/** Called when the activity is first created. 
 * @param <MyCount>*/
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.watch_course);

    //intent
    TextViewTopTitle = (TextView) findViewById(R.id.TextViewTopTitle);
    Bundle bundle = getIntent().getExtras();
    TextViewTopTitle.setText(bundle.getString("RESULT2")+" ");
    getText(bundle.getString("RESULT2"));

    final Handler mHandler = new Handler();    
    initView();

    final Runnable mUpdateResults = new Runnable() {
        public void run() {

            AnimateandSlideShow();

        }
    };
    final int delay = 5000; // delay for xx sec.      

    final long period = 11000;//repet every xx seconds       
    Timer timer = new Timer();
    timer.scheduleAtFixedRate(new TimerTask() {

    public void run() {

         mHandler.post(mUpdateResults);
    }

}, delay, period);}    
// Helper method to start the animation on the splash screen 
    private void AnimateandSlideShow() {
slidingimage = (ImageView)findViewById(R.id.ImageView3_Left);
slidingimage.setImageResource(IMAGE_IDS[currentimageindex%IMAGE_IDS.length]);
currentimageindex++;
slidingimage.getAnimation();}

действительно буду признателен за вашу помощь.

Ответы [ 2 ]

1 голос
/ 10 марта 2012
     public void run(){
        try{                                      
            Thread.sleep(4000);                
        }                              
        catch(Exception ex){

            Log.e("Welcome Exception :",ex.toString());
        }                      
        mHandler.sendEmptyMessage(0);     
    }   
0 голосов
/ 10 марта 2012

почему бы не использовать случайно сгенерированное число вместо определенных в настоящее время значений?

я имею в виду:

final int delay = 5000; // delay for xx sec.      

final long period = 11000;//repet every xx seconds

? Похоже, это слишком много, или, может быть, я читаю это неправильно

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...