Kotlin TextView Blink

Halo gaes, sekedar berbagi keisengan aja, kala itu saya lagi latihan textview dan pengen tau aja apakah cara membuat textview blink di android itu semudah melakukan untuk web? OMG ternyata tidak gaes,lumayan ribet, padahal kasusnya sederhana banget jika dilihat dari sudut pandang web developer. Oke, seribet apa? simak penjelasan di bawah.

<TextView
   android:id="@+id/usage"
   android:layout_marginTop="220dip"
   android:layout_marginLeft="45dip"
   android:layout_marginRight="15dip"
   android:typeface="serif"
   android:layout_width="wrap_content"
   android:layout_height="wrap_content"
   android:text="Google "
   android:textColor="#030900"/>

Lalu saya ingin membuatnya seolah blink, maka kita tinggal sembunyikan saja komponen TextView itu lalu ditampilkan lagi dalam rentang waktu tertentu, nah untuk melakukan routine ini kita menggunakan service yang bernama "Handler", lalu dibantu "Thread" untuk membuat intervalnya. Kurang lebih seperti ini.

package teste.blink;

import android.app.Activity;
import android.os.Bundle;
import android.os.Handler;
import android.view.View;
import android.widget.TextView;

public class TesteBlinkActivity extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        blink();
}

private void blink(){
    final Handler handler = new Handler();
    new Thread(new Runnable() {
        @Override
        public void run() {
        int timeToBlink = 1000;    //in milissegunds
        try{Thread.sleep(timeToBlink);}catch (Exception e) {}
            handler.post(new Runnable() {
                @Override
                    public void run() {
                    TextView txt = (TextView) findViewById(R.id.usage);
                    if(txt.getVisibility() == View.VISIBLE){
                        txt.setVisibility(View.INVISIBLE);
                    }else{
                        txt.setVisibility(View.VISIBLE);
                    }
                    blink();
                }
                });
            }
        }).start();
    }

Silakan compile dan lihat hasilnya, selamat mencoba!


Post a Comment

Previous Next

نموذج الاتصال