سورس بازی حدس یک عدد در اندروید

چهارشنبه 4 اسفند 1395

در این مقاله قصد داریم که سورس یک بازی را حدس بزنیم این بازی به این شکل است که شما د رابتدا یک عدد را حدس می زنید اگر درست حدس زدید پیغام می دهد که شما برنده شدید اگر آن را درست حدس نزنید پیغام می دهد که حدس شما اشتباه است و دوباره یک عددی دیگر حدس بزنید.

سورس بازی حدس یک عدد در اندروید

ابتدا در قسمت layout از یک edittext و Button استفاده می کنیم به صورت زیر:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:icon="@drawable/icon"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >
<TextView 
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:text="@string/hello"
    />
<EditText
        android:id="@+id/number"
        android:inputType="number"
        android:maxLength="3"
        android:hint="Guess a number between 1 and 100"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        />
<Button
        android:id="@+id/guessButton"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="@string/button"
        />
           
</LinearLayout>

در پوشه ی values اسم برنامه تان را بنویسید:

<?xml version="1.0" encoding="utf-8"?>
<resources>
 
   <string name="hello">I\'m thinking of a number...</string>
 
  <string name="app_name">Number Guess</string>
  
 <string name="button">Guess</string>
</resources>

حال در کلاس یک متغیر رندم تعریف می کنید و یک متغیر که از خود کاربر از داخل edittextگرفته می شود اگر متغیر رندم با متغیری که کاربر وارد کرده است برابر باشد پیغام می دهد عدد درست است، اگر کوچک تر باشد پیغام می دهد عدد بدست آمده خیلی کم است و اگر بزرگتر از حدس زده شده باشد پیغام می دهد که عدد به دست آمده خیلی بزرگ است.

نکته:کاربر فقط می تواند 5 بار امتحان نماید.

کلاس جاوا به صورت زیر خواهد بود:



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

public class numberGuess extends Activity implements OnClickListener {
        public Button guessButton;
        public EditText numText;
        public int randNum;
        public int count = 5;
       
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
       
        randNum = (int)((Math.random() * 100) + 1);
       
        guessButton = (Button) findViewById(R.id.guessButton);
        numText = (EditText) findViewById(R.id.number);
        guessButton.setOnClickListener(this);
    }
   
    public void onClick(View v){
       
        Toast toast = Toast.makeText(this, "", Toast.LENGTH_SHORT);
        toast.setGravity(Gravity.CENTER, 0, 0);
       
        if(numText.getText().toString() != null){
              
               try{
               if(Integer.parseInt(numText.getText().toString()) == randNum){
                       toast.setText("Correct. New number picked.");
                       randNum = (int)((Math.random() * 100) + 1);
                       count = 5;
               } else if(Integer.parseInt(numText.getText().toString()) > randNum ){
                       count--;
                       toast.setText("Too high, " + count + " tries left.");
               } else if(Integer.parseInt(numText.getText().toString()) < randNum){
                       count--;
                       toast.setText("Too low, " + count + " tries left.");
               }
              
               if(count == 0){
                       toast.setDuration(Toast.LENGTH_LONG);
                       toast.setText("The number was " + randNum + ". New number picked.");
                       randNum = (int)((Math.random() * 100) + 1);
                       count = 5;
               }
               } catch (Exception e) {
                       toast.setText("Try putting in a number.");
                       toast.setDuration(Toast.LENGTH_LONG);
               }
               toast.show();
        }
        numText.setText("");
    }
}

خروجی:

فایل های ضمیمه

برنامه نویسان

نویسنده 3355 مقاله در برنامه نویسان

کاربرانی که از نویسنده این مقاله تشکر کرده اند

در صورتی که در رابطه با این مقاله سوالی دارید، در تاپیک های انجمن مطرح کنید