به نام خدا
سلام همراهان همیشگی همیار اندروید
در این جلسه از آموزش ها میخام بهتون یاد بدم که چطوری از سیستم امتیاز دهی
در برنامه های خودتون استفاده کنیدپ
مثلا شما یک برنامه دارید و میخواید یک سیستمی در برنامتون پیاده کنید
که کاربر توسط اون به برنامتون امتیاز بده
خب این کار در برنامه نویسی اندروید توسط RatingBar قابلیت اجرا رو داره
و منم در این جلسه میخام Rating Bar یا همان امتیاز دهی ستاره ای رو بهتون آموزش بدم
که در حین این آموزش سایر آموزش های قبلیمونم میتونیم مرور کنیم از جمله ClickListener و Toast
قدم اول
اولین کاری که ما انجام میدیم باید درک کنیم که چه چیز هایی رو نیاز داریم
ما به یک RatingBar برای امتیاز دهی و یک Textview برای نشان دادن امتیاز و به یک Button برای ثبت امتیاز نیاز داریم
در لایوت مورد نظر ویوهای بالا رو ایجاد میکنیم طبق کدهای پایین
activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center"
android:orientation="vertical"
tools:context=".MainActivity">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="HamyarAndroid.com"
android:textSize="30dp" />
<RatingBar
android:id="@+id/ratingBar"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="40dp" />
<TextView
android:id="@+id/num"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="40dp"
android:hint="0"
android:textSize="30sp" />
<Button
android:id="@+id/submit"
android:layout_width="200dp"
android:layout_height="40dp"
android:layout_marginTop="40dp"
android:text="ثبت امتیاز" />
</LinearLayout>
همانطور که در بالا میبینید ما ویوهایی که لازم داشتیم برای اجرای کارمون رو ایجاد کردیم
و تصویر کدهای بالا رو میتونید در پایین ببینید
قدم دوم
در این مرحله نوبت میرسه به نوشتن کدهای جاوا
در MainActivity.java مورد نظر کدهای زیر را مینویسم و خط به خط براتون توضیح میدم
MainActivity.java
package com.hamyarandroid.myapplication;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.RatingBar;
import android.widget.TextView;
import android.widget.Toast;
public class MainActivity extends AppCompatActivity {
RatingBar ratingBar;
Button submit;
TextView num;
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
submit = findViewById(R.id.submit);
ratingBar = findViewById(R.id.ratingBar);
num = findViewById(R.id.num);
submit.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View v)
{
num.setText(String.valueOf(ratingBar.getRating()));
Toast.makeText(MainActivity.this,"امتیاز شما ثبت گردید",Toast.LENGTH_SHORT).show();
}
});
}
}
خط های 17 تا 19
من اومدم و ویوهایی رو که در layout مورد نظر نوشتم رو معرفی می کنم
خط های 28 تا 30
اتصال ویو ها از طریق آیدی یا کانفیگ
خط های 32 تا 40
اومدم به Button که اسمشو submit گذاشتم خاصیت کلیک میدم بهش
خط 37
این عملی است که هنگام کلیک خوردن submit باید انجام شود که اون رو هم براتون توضیح میدم
توسط ()ratingBar.getRating مقدار ستاره های علامت خورده را میگیریم و توسط String.valueOf تبدیل به string می کنیم
و توسط setText اون رو درون TextView که نامش num است چاپ میکنیم
خط 38
این خط هم همانند خط 37 با کلیک خوردن باید عمل کند و یک پیام در پایین صفحه ایجاد کند که به آن Toast می گویند
عکس خروجی برنامه رو میتونید در پایین ببینید
همانطور که در بالا میبینید بعد از زدن دکمه ثبت امتیاز، امتیاز در TextView به نمایش در میاد
و پیامی در پایین صفحه به نمایش در میاد که به شما میگه امتیاز شما ثبت گردید که به این پیام Tost میگن
و اما بعضی از شما دوست دارین در پیامی که به شما نمایش داده میشه مقدار امتیاز رو هم به شما نشون بده
خب شما باید کد مربوط به Toast رو به صورت پایین تغییر بدین
Toast.makeText(MainActivity.this,"امتیاز"+(ratingBar.getRating())+"شما ثبت گردید",Toast.LENGTH_SHORT).show();
و خروجی کار رو بعد از تغییر Toast می تونید در پایین ببینید
همانطور که میبینید در در Toast مقدار امتیاز هم جایگذاری شده
خب این آموزش هم به پایان رسید تا آموزش بعد خدا نگهدارتون باشه دوستان