Android Studio yordamida oddiy Kalkulyator ilovasini yaratish. Laboratoriya ishdan maqsad


Ushbu koddan foydalangandan so'ng UI quyidagicha bo'ladi:qaysi



Download 251,04 Kb.
bet2/2
Sana18.07.2022
Hajmi251,04 Kb.
#819487
1   2
Ushbu koddan foydalangandan so'ng UI quyidagicha bo'ladi:qaysi

3-qadam: MainActivity.java fayli bilan ishlash

Sinf ichida MainActivity.java faylini oching va doSum (View v) nomli methodni yarating. Ushbu usulda, birinchi navbatda, biz ikkita EditTextni o'zgaruvchilar bilan bog'lashimiz kerak, shunda biz ularni kiritish uchun ishlatishimiz mumkin. Shunday qilib, tahrirlash oynasini biz yozgan o'zgaruvchilar bilan bog'lang.


"EditText e1=(EditText )findViewById(R.id.num1);"
Bu yerda num1 matn qutisi uchun identifikator bo‘lib, biz shunchaki ‘num1’ identifikatori bo‘lgan matn maydoniga “e1” o‘zgaruvchi nomini beramiz. Xuddi shunday, biz "e2" o'zgaruvchisi bo'lgan ikkinchi matn qutisi uchun xuddi shu bayonotdan foydalanishimiz kerak. Uchinchi matn maydoni uchun biz foydalandik.
"TextView t1=(TextView) findViewById(R.id.result);"
Bu erda biz TextView-dan foydalandik, chunki biz faqat matnni foydalanuvchi tomonidan o'zgartirilishi mumkin bo'lmagan holda ko'rsatishimiz kerak. Endi getText() funksiyasidan foydalanib raqamlarni satr shaklida kiritishimiz kerak. Kirish bayonoti bo'ladi.
"String s11=e1.getText().toString();"
Bu yerda s11 matn qutisiga kiritilgan raqamni saqlaydi 1. Boshqa Textbox(e2) bilan ham xuddi shunday qilishimiz kerak. Endi raqamni int shaklida saqlang va qo'shimchani qo'llang. qo'shilgan qiymatni boshqa o'zgaruvchida saqlang. Saqlangan summani ko'rsatish uchun biz setText() dan quyidagi tarzda foydalanishimiz kerak:
result.setText(final_sum.toString())
final_sum summani saqlaydi va uni string(.toString()) ga aylantirish kerak. Quyida MainActivity.java faylining kodi keltirilgan. Kodni batafsilroq tushunish uchun kod ichiga sharhlar qo'shiladi.
File: MainActivity.java
package com.example.calculator2;
import android.os.Bundle;
import com.google.android.material.snackbar.Snackbar;

import androidx.appcompat.app.AppCompatActivity;


import android.text.TextUtils;


import android.view.View;

import androidx.navigation.NavController;


import androidx.navigation.Navigation;
import androidx.navigation.ui.AppBarConfiguration;
import androidx.navigation.ui.NavigationUI;
import com.example.calculator2.databinding.ActivityMainBinding;
import android.view.Menu;
import android.view.MenuItem;

import android.os.Bundle;


import android.view.View;
import android.widget.EditText;
import android.widget.TextView;

import androidx.appcompat.app.AppCompatActivity;


public class MainActivity extends AppCompatActivity {


private AppBarConfiguration appBarConfiguration;


private ActivityMainBinding binding;
public EditText e1, e2;
TextView t1;
int num1, num2;

public boolean getNumbers() {


//checkAndClear();


// defining the edit text 1 to e1
e1 = (EditText) findViewById(R.id.num1);

// defining the edit text 2 to e2


e2 = (EditText) findViewById(R.id.num2);

// defining the text view to t1


t1 = (TextView) findViewById(R.id.result);
// taking input from text box 1
String s1 = e1.getText().toString();

// taking input from text box 2


String s2 = e2.getText().toString();
if(s1.equals("Please enter value 1") && s2.equals(null))
{
String result = "Please enter value 2";
e2.setText(result);
return false;
}
if(s1.equals(null) && s2.equals("Please enter value 2"))
{
String result = "Please enter value 1";
e1.setText(result);
return false;
}
if(s1.equals("Please enter value 1") || s2.equals("Please enter value 2"))
{
return false;
}

if((!s1.equals(null) && s2.equals(null))|| (!s1.equals("") && s2.equals("")) ){


String result = "Please enter value 2";


e2.setText(result);


return false;
}
if((s1.equals(null) && !s2.equals(null))|| (s1.equals("") && !s2.equals("")) ){
//checkAndClear();
String result = "Please enter value 1";
e1.setText(result);
return false;
}
if((s1.equals(null) && s2.equals(null))|| (s1.equals("") && s2.equals("")) ){
//checkAndClear();
String result1 = "Please enter value 1";
e1.setText(result1);
String result2 = "Please enter value 2";
e2.setText(result2);
return false;
}

else {
// converting string to int.


num1 = Integer.parseInt(s1);

// converting string to int.


num2 = Integer.parseInt(s2);
}

return true;


}

public void doSum(View v) {


// get the input numbers


if (getNumbers()) {
int sum = num1 + num2;
t1.setText(Integer.toString(sum));
}
else
{
t1.setText("Error Please enter Required Values");
}

}
public void clearTextNum1(View v) {


// get the input numbers


e1.getText().clear();
}
public void clearTextNum2(View v) {

// get the input numbers


e2.getText().clear();
}
public void doPow(View v) {

//checkAndClear();


// get the input numbers
if (getNumbers()) {
double sum = Math.pow(num1, num2);
t1.setText(Double.toString(sum));
}
else
{
t1.setText("Error Please enter Required Values");
}
}
// a public method to perform subtraction
public void doSub(View v) {
//checkAndClear();
// get the input numbers
if (getNumbers()) {
int sum = num1 - num2;
t1.setText(Integer.toString(sum));
}
else
{
t1.setText("Error Please enter Required Values");
}
}

// a public method to perform multiplication


public void doMul(View v) {
//checkAndClear();
// get the input numbers
if (getNumbers()) {
int sum = num1 * num2;
t1.setText(Integer.toString(sum));
}
else
{
t1.setText("Error Please enter Required Values");
}
}

// a public method to perform Division


public void doDiv(View v) {
//checkAndClear();
// get the input numbers
if (getNumbers()) {

// displaying the text in text view assigned as t1


double sum = num1 / (num2 * 1.0);
t1.setText(Double.toString(sum));
}
else
{
t1.setText("Error Please enter Required Values");
}
}
// a public method to perform modulus function
public void doMod(View v) {
//checkAndClear();
// get the input numbers
if (getNumbers()) {
double sum = num1 % num2;
t1.setText(Double.toString(sum));
}
else
{
t1.setText("Error Please enter Required Values");
}
}

@Override


protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
e1 = (EditText) findViewById(R.id.num1);
// defining the edit text 2 to e2
e2 = (EditText) findViewById(R.id.num2);
}

@Override


public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.menu_main, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();

//noinspection SimplifiableIfStatement


if (id == R.id.action_settings) {
return true;
}

return super.onOptionsItemSelected(item);


}

@Override


public boolean onSupportNavigateUp() {
NavController navController = Navigation.findNavController(this, R.id.nav_host_fragment_content_main);
return NavigationUI.navigateUp(navController, appBarConfiguration)
|| super.onSupportNavigateUp();
}
}
NATIJA:



Download 251,04 Kb.

Do'stlaringiz bilan baham:
1   2




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©www.hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish