11 Mart 2013 Pazartesi

Android Options Menü Yapımı

Merhaba Arkadaşlar , bu dersimizde options menu yapımını anlatacağım. Yeni bir proje oluşturalım. Oluşturduğumuz projemizde   public boolean onCreateOptionsMenu(Menu menu)  fonksiyonunu  kulanacağız . Options Menümüzü oluşturmak için res  klasörünün altındaki menu kalsörüne yeni bir xml dosyası açmalıyız.


Oluşturduğunuz yeni .xml dosyasına istediğiniz ismi verebilirsinz.Ben altmenu dedim. Böylelilkle res->menu-> altmenu oluştu. Şimdi oluşturduğumuz altmenu.xml dosyamızı açıp içini dolduralım. 
Add butonuna tıklayıp istediğimiz kadar options menü ekliyebiliriz. Ben görüldüğü gibi üç tane ekledim. Kırmızı ile kutu içine aldığım yerlerden id ve title istediğiniz gibi değiştirebilirsiniz. Add butonuna tıkladıktan sonra şu şekilde seçerek istediğiniz seçenegi ilave edebilirsiniz.

Tasarımda hiçbir şey  yapmıyoruz. Java kodlarımıza bi bakalım.

package com.example.optionsmenu;


import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.Toast;

public class MainActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }
    

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.altmenu, menu);
        return true;
    }
    public boolean onOptionsItemSelected(MenuItem item) {
        // TODO Auto-generated method stub
        switch (item.getItemId()) {
        
        case R.id.item1:
            Toast.makeText(getApplicationContext(), "İşlem1'e tıklandı.", Toast.LENGTH_LONG).show();
            break;
        case R.id.item2:
            Toast.makeText(getApplicationContext(), "İşlem2'e tıklandı.", Toast.LENGTH_LONG).show();
            break;
        case R.id.item3:
           
            Toast.makeText(getApplicationContext(), "İşlem3'e tıklandı.", Toast.LENGTH_LONG).show();
            break;
        }
        return false;
        
        
        
    }

}

Oluşturduğumuz Options menülere de tıkladığımızda Toast vermesi için şu kodu ekledim .

Toast.makeText(getApplicationContext(), "İşlem1'e tıklandı.", Toast.LENGTH_LONG).show();

Ekran görüntüsüne bakalım ;



8 Mart 2013 Cuma

Sıcaklık Birimi Dönüştürücü

Merhaba arkadaşlar ,bu uygulamamızda sıcaklık birim dönüştürücüsü yapıcaz.Yeni uyguluma açıp istediğiniz ismi verebilirsiniz. Tasarıma gelince ben Edittext,Radiobuton,Textview,Button kullandım,tasarımın şekli size kalmış istediğiniz gibi yapabilirsiniz. Burada yapmak istediğimiz celsius değerini diğer radiobutonda seçili olanlara dönüştürmektir. Uygulamamızın xml kodlarımız şu şeklidedir:

<?xml version="1.0" encoding="utf-8"?>
<AbsoluteLayout
    android:id="@+id/widget32"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    xmlns:android="http://schemas.android.com/apk/res/android">

<EditText
    android:id="@+id/edit1"
    android:layout_width="318dp"
    android:layout_height="wrap_content"
    android:layout_x="0dp"
    android:layout_y="4dp"
    android:textSize="18sp" />

<RadioGroup
    android:id="@+id/widget65"
    android:layout_width="136dp"
    android:layout_height="142dp"
    android:layout_x="2dp"
    android:layout_y="52dp" >

    <RadioButton
        android:id="@+id/radio1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="40dp"
        android:text="Celsius" />

</RadioGroup>

<Button
    android:id="@+id/buton1"
    android:layout_width="62dp"
    android:layout_height="32dp"
    android:layout_x="126dp"
    android:layout_y="97dp"
    android:background="@drawable/arrow_leftright" />

<Button
    android:id="@+id/buton2"
    android:layout_width="139dp"
    android:layout_height="wrap_content"
    android:layout_x="8dp"
    android:layout_y="284dp"
    android:text="Hesapla" />

<Button
    android:id="@+id/buton3"
    android:layout_width="134dp"
    android:layout_height="wrap_content"
    android:layout_x="170dp"
    android:layout_y="283dp"
    android:text="Temizle" />

<RadioGroup
    android:id="@+id/widget66"
    android:layout_width="136dp"
    android:layout_height="174dp"
    android:layout_x="190dp"
    android:layout_y="43dp" >

    <RadioButton
        android:id="@+id/radio2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Celsius" />

    <RadioButton
        android:id="@+id/radio3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Fahrenhayt" />

    <RadioButton
        android:id="@+id/radio4"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Kelvin" />

    <RadioButton
        android:id="@+id/radio5"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Reaumur" />
</RadioGroup>

<EditText
    android:id="@+id/edit2"
    android:layout_width="242dp"
    android:layout_height="wrap_content"
    android:layout_x="54dp"
    android:layout_y="241dp"
    android:ems="10"
    android:textSize="18sp" >

    <requestFocus />
</EditText>

<TextView
    android:id="@+id/widget85"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_x="2dp"
    android:layout_y="256dp"
    android:text="Sonuç:"
    android:textSize="15sp" />

</AbsoluteLayout>
Uygulamada Celsius'u ,Fahrenhayt,Kelvin ve Reaumur dönüştürme formüllerini bilmek gerekir .Formüller söyledir.
 F =  C × 1.8 + 32
 K = C  + 273.15
 Re =  C × 0.8
Şimdi Java kodlarımıza göz atalım .



package com.example.sicaklikdonusturcu;

import android.os.Bundle;
import android.app.Activity;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.RadioButton;
import android.widget.Toast;

public class Donusturucu extends Activity {
    Button buton,temizle;
    EditText edittext1,edittext2;
    RadioButton radio1,radio2,radio3,radio4,radio5,radio6,radio7,radio8;
    Integer deger,F,C,K,Re;
    
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_donusturucu);
        buton=(Button)findViewById(R.id.buton2);
        temizle=(Button)findViewById(R.id.buton3);
        edittext1=(EditText)findViewById(R.id.edit1);
        edittext2=(EditText)findViewById(R.id.edit2);
        radio1= (RadioButton)findViewById(R.id.radio1);
        radio2= (RadioButton)findViewById(R.id.radio2);
        radio3= (RadioButton)findViewById(R.id.radio3);
        radio4= (RadioButton)findViewById(R.id.radio4);
        radio5= (RadioButton)findViewById(R.id.radio5);
        
        buton.setOnClickListener(new View.OnClickListener() {
            
            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub
                
                deger=Integer.parseInt(edittext1.getText().toString());
                //celsius-fahrenhayt dönüşümü
                if(radio1.isChecked()&&radio3.isChecked())
                {
                    F=(int) (deger*(1.8)+32);
                    
                    edittext2.setText(F.toString());
                //celsius-kelvin    
                }else if(radio1.isChecked()&&radio4.isChecked())
                {
                    
                    K=deger+273;
                    edittext2.setText(K.toString());
                    //celsius-reaumur
                }else if(radio1.isChecked()&&radio5.isChecked())
                {
                    Re=(int) (deger*(0.8));
                    edittext2.setText(Re.toString());
                    //celsius-celsius
                }else if(radio1.isChecked()&&radio2.isChecked())
                {
                    Toast.makeText(getApplicationContext(), "Aynı değerleri seçtiniz.", Toast.LENGTH_LONG);
                    edittext2.setText(deger.toString());
                }
            }
        });
        
     temizle.setOnClickListener(new View.OnClickListener() {
        
        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub
            edittext1.setText("");
            edittext2.setText("");
            radio2.setChecked(false);
            radio3.setChecked(false);
            radio4.setChecked(false);
            radio5.setChecked(false);
        }
    });
    }
    
}

Uygulamamızın ekran görüntüsü ise şu şekildedir:


Kolay Gelsin .

Soru ve Görüşleriniz için yorum yapabilirsiniz.