Evden Eve Nakliyat

Bill Gates’e Ait 11 Anlamlı Söz

Teknolojinin Zararlarını Biliyor musunuz ?

Steve Jobs’tan 13 İlham Verici Söz

Ülkelere Ait Sloganlar | Video 1

Android – Time Zone Uygulaması Yapımı

Android Programlama 6 Eylül 2016
331 Görüntülenme

Merhaba arkadaşlar bu konumuzda android de time zone uygulaması yapımını öğreneceğiz. Bu uygulamamızda listeden seçeceğimiz bir ülkenin saatini, bulunduğumuz yere göre saat farkını ve ekrana yazdıracağız.

MainActivity.java Kodlarımız

Aşağıda yer alan kodları mainActivity’de onCreate metotun’dan önce ekliyoruz.

private Spinner spinnerAvailableID;
private Calendar current;
private TextView textTimeZone, txtCurrentTime, txtTimeZoneTime;
private long miliSeconds;
private ArrayAdapter<String> idAdapter;
private SimpleDateFormat sdf;
private Date resultdate;
getGMTTime() Metotumuz

Aşağıda getGMTtime metodumuz yer almakta bu metodu onCreate metodun dan hemen sonra ekliyoruz.

private void getGMTTime() {
current = Calendar.getInstance();
txtCurrentTime.setText("" + current.getTime());
 
miliSeconds = current.getTimeInMillis();
 
TimeZone tzCurrent = current.getTimeZone();
int offset = tzCurrent.getRawOffset();
if (tzCurrent.inDaylightTime(new Date())) {
offset = offset + tzCurrent.getDSTSavings();
}
 
miliSeconds = miliSeconds - offset;
 
resultdate = new Date(miliSeconds);
System.out.println(sdf.format(resultdate));
}
onCreate Metodu Kodları

Aşağıda yer alan kodları onCreate Metodu içerisine ekliyoruz.

spinnerAvailableID = (Spinner) findViewById(R.id.availableID);

    textTimeZone = (TextView) findViewById(R.id.timezone);
    txtCurrentTime = (TextView) findViewById(R.id.txtCurrentTime);
    txtTimeZoneTime = (TextView) findViewById(R.id.txtTimeZoneTime);

    String[] idArray = TimeZone.getAvailableIDs();

    sdf = new SimpleDateFormat("EEEE, dd MMMM yyyy HH:mm:ss");

    idAdapter = new ArrayAdapter<String>(this,
        android.R.layout.simple_spinner_item, idArray);

    idAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
    spinnerAvailableID.setAdapter(idAdapter);

    getGMTTime();

    spinnerAvailableID
        .setOnItemSelectedListener(new OnItemSelectedListener() {

          @Override
          public void onItemSelected(AdapterView<?> parent,
              View view, int position, long id) {
            getGMTTime();
            String selectedId = (String) (parent
                .getItemAtPosition(position));

            TimeZone timezone = TimeZone.getTimeZone(selectedId);
            String TimeZoneName = timezone.getDisplayName();

            int TimeZoneOffset = timezone.getRawOffset()
                / (60 * 1000);

            int hrs = TimeZoneOffset / 60;
            int mins = TimeZoneOffset % 60;

            miliSeconds = miliSeconds + timezone.getRawOffset();

            resultdate = new Date(miliSeconds);
            System.out.println(sdf.format(resultdate));

            textTimeZone.setText(TimeZoneName + " : GMT " + hrs + "."
                + mins);
            txtTimeZoneTime.setText("" + sdf.format(resultdate));
            miliSeconds = 0;
          }

          @Override
          public void onNothingSelected(AdapterView<?> arg0) {

          }
        });
main.xml Dosyamıza ait kodlar
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/LinearLayout1"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:gravity="center|top"
    android:orientation="vertical"
    android:padding="5dp" >

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:orientation="vertical" >

        <TextView
            android:id="@+id/txtGMTTime"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/current" />

        <TextView
            android:id="@+id/txtCurrentTime"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            tools:context=".MainActivity" />
    </LinearLayout>

    <Spinner
        android:id="@+id/availableID"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content" />

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:orientation="vertical" >

        <TextView
            android:id="@+id/timezone"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" />

        <TextView
            android:id="@+id/txtTimeZoneTime"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" />
    </LinearLayout>

</LinearLayout>
Ekran Görüntüleri

time-zone-0 time-zone-1 time-zone-2

Yorumlar

Henüz hiç yorum yapılmamış.

İlginizi Çekebilir
Android İnterneti Kontrol Etmek için Gerekli Kod

Android İnterneti Kontrol Etmek için Gerekli Kod

3 Eylül 2016
210 Görüntülenme
Android Video Oynatma Kaynak Kodu

Android Video Oynatma Kaynak Kodu

30 Ağustos 2016
260 Görüntülenme
Android Açılış Ekranı Yapımı

Android Açılış Ekranı Yapımı

27 Ağustos 2016
357 Görüntülenme
Android Buton Tıklama Kodu

Android Buton Tıklama Kodu

25 Ağustos 2016
177 Görüntülenme
Android Ekran Yenileme ( Reflesh ) Kodu

Android Ekran Yenileme ( Reflesh ) Kodu

25 Ağustos 2016
249 Görüntülenme
Android Wifi Açma Kodu

Android Wifi Açma Kodu

24 Ağustos 2016
183 Görüntülenme
Bunlar da var!
Filmlere Birde Efektsiz Bakın

Filmlere Birde Efektsiz Bakın

23 Mart 2016
87 Görüntülenme
Paraları Konuşturan Adam [Video]

Paraları Konuşturan Adam [Video]

18 Kasım 2015
75 Görüntülenme
OverWatch’un Açık Betası Başladı!

OverWatch’un Açık Betası Başladı!

8 Mayıs 2016
105 Görüntülenme
Büyük ve Hızlı Motorlu Testereler

Büyük ve Hızlı Motorlu Testereler

23 Nisan 2016
83 Görüntülenme