Operatör Gösterme
09.08.2017 - 02:35
Operatörleri resimdeki gibi sayıların yanına yazdırmak istiyorum.Nasıl yapabilirim? Şimdiden teşekkürler :)
MainActivity.java
package com.example.tckcakar.myapplication;
import android.content.Context;
import android.content.SharedPreferences;
import android.provider.SyncStateContract;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.Gravity;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.EditText;
import android.widget.GridView;
import android.widget.TextView;
public class MainActivity extends AppCompatActivity implements View.OnClickListener {
GridView gridView;
float ilkdeger = 0;
public double sonuc = 0;
public String islem;
EditText edit;
String displaystr;
String[] dizi = {
"7", "8", "9", "C", "4", "5", "6", "/", "1", "2", "3", "*", "0", "=", "+", "-"
};
public MainActivity() {
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
edit= (EditText) findViewById(R.id.edit);
gridView = (GridView) findViewById(R.id.gridView1);
ArrayAdapter<String> adapter = new MyAdapter(this);
adapter.addAll(dizi);//diziyi adaptöre gönderdik.
gridView.setAdapter(adapter);//gridview ve adaptörü bağladık.
adapter.notifyDataSetChanged();
edit.setEnabled(false);
}
@Override
public void onClick(View view) {
int id = view.getId();
switch (id) {
case R.id.button:
TextView textView = (TextView) view;
String btnStr = textView.getText().toString();
kay(btnStr);
break;
}
}
public void kay (String btnStr) {
if (btnStr.equals("1")) {
edit.setText(edit.getText() +"1");
} else if (btnStr.equals("2")) {
edit.setText(edit.getText() +"2");
} else if (btnStr.equals("3")) {
edit.setText(edit.getText() +"3");
} else if (btnStr.equals("4")) {
edit.setText(edit.getText() +"4");
} else if (btnStr.equals("5")) {
edit.setText(edit.getText() +"5");
} else if (btnStr.equals("6")) {
edit.setText(edit.getText() +"6");
} else if (btnStr.equals("7")) {
edit.setText(edit.getText() +"7");
} else if (btnStr.equals("8")) {
edit.setText(edit.getText() +"8");
} else if (btnStr.equals("9")) {
edit.setText(edit.getText() +"9");
} else if (btnStr.equals("C")) {
try {
ilkdeger = 0;
sonuc = 0;
edit.setText("");
} catch (Exception C) {
}
} else if (btnStr.equals("+")) {
try {
if (!edit.getText().toString().isEmpty()) {
ilkdeger = Float.parseFloat(edit.getText().toString());
edit.setText("");
islem = "Toplama";
displaystr += "+";
}
} catch (Exception C) {
}
} else if (btnStr.equals("-")) {
try {
if (!edit.getText().toString().isEmpty()) {
ilkdeger = Float.parseFloat(edit.getText().toString());
edit.setText("");
islem = "Çıkarma";
}
} catch (Exception C) {
}
} else if (btnStr.equals("/")) {
try {
if (!edit.getText().toString().isEmpty()) {
ilkdeger = Float.parseFloat(edit.getText().toString());
edit.setText("");
islem = "Bölme";
}
} catch (Exception C) {
}
} else if (btnStr.equals("*")) {
try {
if (!edit.getText().toString().isEmpty()) {
ilkdeger = Float.parseFloat(edit.getText().toString());
edit.setText("");
islem = "Çarpma";
}
} catch (Exception C) {
}
} else if (btnStr.equals("="))
if (!edit.getText().toString().isEmpty() && !String.valueOf(ilkdeger).equals("0")) {
if (islem.equals("Toplama")) {
sonuc = ilkdeger + Float.parseFloat(edit.getText().toString());
} else if (islem.equals("Çıkarma")) {
sonuc = ilkdeger - Float.parseFloat(edit.getText().toString());
} else if (islem.equals("Çarpma")) {
sonuc = ilkdeger * Float.parseFloat(edit.getText().toString());
} else if (islem.equals("Bölme")) {
sonuc = ilkdeger / Float.parseFloat(edit.getText().toString());
}
edit.setText(String.valueOf(sonuc));
ilkdeger = 0;
sonuc = 0;
} else {
edit.setText("Değer giriniz");
}
if (R.id.button == gridView.getId()
) {
ilkdeger = 0;
sonuc = 0;
edit.setText("");
}
}
private class MyAdapter extends ArrayAdapter<String> {//adaptörü sınıf olarak oluşturduk.
MyAdapter(@NonNull Context context) {
super(context, android.R.layout.simple_list_item_1);
}
@NonNull
@Override
public View getView(int position, @Nullable View convertView, @NonNull ViewGroup parent) {// pozisyonunu alır ve çizer
if (convertView == null) {
convertView = getLayoutInflater().inflate(R.layout.calc_button, parent, false);//VİEWVİ GÖRSEL HALE GETİRRİ INFLATER
}
TextView button = convertView.findViewById(R.id.button);
button.setText(getItem(position));//pozisyonu alır.
button.setOnClickListener(MainActivity.this);
return convertView;
}
}}
6
Görüntülenme
0 Beğeni