SORU
7 Mart 2012, ÇARŞAMBA


Android düğmesini Kullanmak için Klavye düğmesine Bitti

Benim app Tamam giriş için kullanıcı numarası için bir alan var. Yalnızca sayı kabul alan belirledik. Kullanıcı alanını tıklattığında klavye getiriyor. (ICS) klavye üzerinde yapılan bir düğme vardır. Klavyede bitti düğmesini için Gönder düğmesi uygulamam var tetikleyecek istiyorum. Benim kod aşağıdaki gibidir.

package com.michaelpeerman.probability;

import android.app.Activity;
import android.app.ProgressDialog;
import android.content.DialogInterface;
import android.content.DialogInterface.OnCancelListener;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import java.util.Random;

public class ProbabilityActivity extends Activity implements OnClickListener {

private Button submit;
ProgressDialog dialog;
int increment;
Thread background;
int heads = 0;
int tails = 0;

public void onCreate(Bundle paramBundle) {
    super.onCreate(paramBundle);
    setContentView(R.layout.main);
    submit = ((Button) findViewById(R.id.submit));
    submit.setOnClickListener(this);
}

public void onClick(View view) {
    increment = 1;
    dialog = new ProgressDialog(this);
    dialog.setCancelable(true);
    dialog.setMessage("Flipping Coin...");
    dialog.setProgressStyle(ProgressDialog.STYLE_HORIZONTAL);
    dialog.setProgress(0);
    EditText max = (EditText) findViewById(R.id.number);
    int maximum = Integer.parseInt(max.getText().toString());
    dialog.setMax(maximum);
    dialog.show();
    dialog.setOnCancelListener(new OnCancelListener(){

          public void onCancel(DialogInterface dialog) {

              background.interrupt();
              TextView result = (TextView) findViewById(R.id.result);
                result.setText("heads : "   heads   "\ntails : "   tails);


          }});


    background = new Thread(new Runnable() {
        public void run() {
            heads=0;
            tails=0;
            for (int j = 0; !Thread.interrupted() && j < dialog.getMax(); j  ) {
                int i = 1   new Random().nextInt(2);
                if (i == 1)
                    heads  ;
                if (i == 2)
                    tails  ;
                progressHandler.sendMessage(progressHandler.obtainMessage());
            }
        }
    });
    background.start();
}

Handler progressHandler = new Handler() {
    public void handleMessage(Message msg) {

        dialog.incrementProgressBy(increment);
        if (dialog.getProgress() == dialog.getMax()) {
            dialog.dismiss();
            TextView result = (TextView) findViewById(R.id.result);
            result.setText("heads : "   heads   "\ntails : "   tails);


        }
    }

};

}

CEVAP
7 Mart 2012, ÇARŞAMBA


Bu da kullanabilirsiniz (bir eylem EditText gerçekleştirilen özel bir dinleyici çağrılacak ayarlar) BİTTİ ve geri DÖNMEK için: her ikisi de çalışıyor

max.setOnEditorActionListener(new OnEditorActionListener() {
        public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
            if ((event != null && (event.getKeyCode() == KeyEvent.KEYCODE_ENTER)) || (actionId == EditorInfo.IME_ACTION_DONE)) {
                Log.i(TAG,"Enter pressed");
            }    
            return false;
        }
    });

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • AmazonWireless

    AmazonWirele

    8 EYLÜL 2010
  • ehowhome

    ehowhome

    22 NİSAN 2009
  • XxMinayaxX1

    XxMinayaxX1

    9 Mayıs 2012