رفتن به مطلب
  • 0

مشکل در دکمه بک گوشی برای خروج


androidyas

سوال

سلام این کد رو برای خروج از برنامه گذاشتم ولی کار نمیکنه فقط میگه دوبار بزنید وقتیم میزنم میاد بیرون ولی برنامه خارج نمیشه کامل آیا درسته؟

@Override
public void onBackPressed() {
    if (doubleBackToExitPressedOnce)
    {
        super.onBackPressed();
        return;
    }
    this.doubleBackToExitPressedOnce = true
    ;
    Toast.makeText(this, "لطفا برای خروج دوبار،کلیک کنید", Toast.LENGTH_SHORT).
            show
                    ();
    new Handler().postDelayed(new Runnable()
                                    {
                                        @Override
                                        public void
                                        run()
                                        {doubleBackToExitPressedOnce = false;
                                        }}, 2000);
}
لینک ارسال
به اشتراک گذاری در سایت های دیگر

8 پاسخ به این سوال تاکنون داده شده است

ارسال‌های توصیه شده

سلام دوست عزیز کداتون فکر کنم مشکل داره براتون یک اکتیویتی نمونه و کد های کلاس جاواش را می نویسم : 

کدهای xml

 <?xml version="1.0" encoding="utf-8"?>
 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
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:id="@+id/txt1" android:text="txt1" />
<TextView android:layout_width="fill_parent"
    android:layout_height="wrap_content" android:id="@+id/txt2"   android:text="txt2"/>
<Button android:layout_width="fill_parent"
    android:layout_height="wrap_content" android:id="@+id/btn1"
    android:text="Close App" />
  </LinearLayout>

 

کدهای کلاس جاوا : 

import android.app.Activity;

import android.os.Bundle;

import android.view.View;

import android.view.View.OnClickListener;

import android.widget.Button;

public class testprj extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    Button btn1 = (Button) findViewById(R.id.btn1);
    btn1.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub
            finish();
            System.exit(0);
        }
    });
    }
 }

 

یا بطور خلاصه برای باتن : 

Button btnexit = (Button)findviewbyId(btn_exit);

btnexit.setOnClicklistenr(new onClicklister(){

     @override
     public void onClick(View v){
            finish();
});

 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در 2 ساعت قبل، appfatim گفته است :

سلام دوست عزیز کداتون فکر کنم مشکل داره براتون یک اکتیویتی نمونه و کد های کلاس جاواش را می نویسم : 

کدهای xml


 <?xml version="1.0" encoding="utf-8"?>
 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
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:id="@+id/txt1" android:text="txt1" />
<TextView android:layout_width="fill_parent"
    android:layout_height="wrap_content" android:id="@+id/txt2"   android:text="txt2"/>
<Button android:layout_width="fill_parent"
    android:layout_height="wrap_content" android:id="@+id/btn1"
    android:text="Close App" />
  </LinearLayout>

 

کدهای کلاس جاوا : 


import android.app.Activity;

import android.os.Bundle;

import android.view.View;

import android.view.View.OnClickListener;

import android.widget.Button;

public class testprj extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    Button btn1 = (Button) findViewById(R.id.btn1);
    btn1.setOnClickListener(new OnClickListener() {

        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub
            finish();
            System.exit(0);
        }
    });
    }
 }

 

یا بطور خلاصه برای باتن : 


Button btnexit = (Button)findviewbyId(btn_exit);

btnexit.setOnClicklistenr(new onClicklister(){

     @override
     public void onClick(View v){
            finish();
});

 

دوست عزیز ممنونم ازتون من میخوام دکمه بک برای خروج باشه نه یک دکمه ای بزارم داخل اپلیکیشن

لینک ارسال
به اشتراک گذاری در سایت های دیگر

سلام خواهش میکنم فکر کنم کدش این بود : 

/**
 * Back button listener.
 * Will close the application if the back button pressed twice.
 */
@Override
public void onBackPressed()
{
    if(backButtonCount >= 1)
    {
        Intent intent = new Intent(Intent.ACTION_MAIN);
        intent.addCategory(Intent.CATEGORY_HOME);
        intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
        startActivity(intent);
    }
    else
    {
        Toast.makeText(this, "Press the back button once again to close the application.", Toast.LENGTH_SHORT).show();
        backButtonCount++;
    }
}

 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در 1 ساعت قبل، appfatim گفته است :

سلام خواهش میکنم فکر کنم کدش این بود : 


/**
 * Back button listener.
 * Will close the application if the back button pressed twice.
 */
@Override
public void onBackPressed()
{
    if(backButtonCount >= 1)
    {
        Intent intent = new Intent(Intent.ACTION_MAIN);
        intent.addCategory(Intent.CATEGORY_HOME);
        intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
        startActivity(intent);
    }
    else
    {
        Toast.makeText(this, "Press the back button once again to close the application.", Toast.LENGTH_SHORT).show();
        backButtonCount++;
    }
}

 

این کدی که دادید دکمه بک رو غیفعال میکنه و میگه لطفا از دکمه خروج استفاده کنید درسته؟

بنده میخوام وقتی دکمه بک ر زدند کامل خارج بشه از برنامه و برنامه تمام بشه و دیگه وقتی رفتند بیرون شروع به خواندن اهنگ نکنه

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در ۱ ساعت قبل، appfatim گفته است :

سلام آها حالا فهمیدم یعنی شما می خواین موزیک قطع شه درسته ؟

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

و باید از دکمه home  استفاده کنیم و برنامه رو ببندیم میخوام اینجوری نباشه وقتی دکمه بک رو میزنیم کامل برنامه بسته شود آیا چنین چیزی امکان پذیره؟

 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

سلام برای این کار باید د کلاس جاواتون یک متد به نام : 

onDestroy():void

را اضافه کنید . ( برای این کار باید در کلاس جاواتون در جایی که متد قبلی بسته شده ctrl+o را بگیرین و onDestroy را جستجو کنید و اضافه کنید به پروژه تون ) و بعد داخلش بنویسین :

music.stop();

برای مثال کد زیر : 

import android.media.MediaPlayer;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.Button;

public class MusicActivity extends AppCompatActivity {

    MediaPlayer music;
    Button palybt;

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

        MediaPlayer music = MediaPlayer.create(this,R.raw.music);
        music.start();

    }

    @Override
    protected void onDestroy() {
        super.onDestroy();
        music.stop();
    }
}

انشاالله که مشکلتون حل میشه !

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در 6 ساعت قبل، appfatim گفته است :

سلام برای این کار باید د کلاس جاواتون یک متد به نام : 


onDestroy():void

را اضافه کنید . ( برای این کار باید در کلاس جاواتون در جایی که متد قبلی بسته شده ctrl+o را بگیرین و onDestroy را جستجو کنید و اضافه کنید به پروژه تون ) و بعد داخلش بنویسین :


music.stop();

برای مثال کد زیر : 


import android.media.MediaPlayer;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.Button;

public class MusicActivity extends AppCompatActivity {

    MediaPlayer music;
    Button palybt;

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

        MediaPlayer music = MediaPlayer.create(this,R.raw.music);
        music.start();

    }

    @Override
    protected void onDestroy() {
        super.onDestroy();
        music.stop();
    }
}

انشاالله که مشکلتون حل میشه !

ممنون ولی این کد هست داخل اکتیوتی

لینک ارسال
به اشتراک گذاری در سایت های دیگر

بایگانی شده

این موضوع بایگانی و قفل شده و دیگر امکان ارسال پاسخ نیست.

  • کاربران آنلاین در این صفحه   0 کاربر

    • هیچ کاربر عضوی،در حال مشاهده این صفحه نیست.
×
×
  • اضافه کردن...