2016-08-08 12 views
0

仲間コーダー!onClickを実行するクラスを割り当てる方法は?

私はかなり新鮮なコーディングで、ちょうどC#からJavaに移行しました!私は、円形のボタンを探して、いくつかの空想をコード化し、次のクラスを作成しました :

package com.example.haavard.gosecure; 

/** 
* Created by haavardkleven on 08.08.2016. 
*/ 

import java.util.Random; 


public class PasswordGenerator { 
    public static void main(String[] args) { 
     int length = 16; //Adjust the lenght of the generated password here 
     System.out.println(generatePswd(length)); 
    } 

    static char[] generatePswd(int len) { 
     System.out.println("Your secure password is:"); 
     String charCaps = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; 
     String chars = "absdefghijklmnopqrstuvwxyz"; 
     String numbers = "1234567890"; 
     String symbols = "[email protected]#£$%^*_=+-/.?<>)"; 

     String passSymbols = charCaps + chars + numbers + symbols; 
     Random rnd = new Random(); 

     char[] password = new char[len]; 
     int index = 0; 
     for (int i = 0; i < len; i++) 
     { 
      password[i] = passSymbols.charAt(rnd.nextInt(passSymbols.length())); 
     } 
     return password; 
    } 
} 

、「アンドロイドスタジオ」の符号化と知識の私のmemroyではないので 何もかも、私が望むようにうまくいきますその高さ、私はこの問題があります:

どのようにMainActivityのonClickリスナーに自分のクラスメソッドを割り当てますか? 私のアプリケーションでクラスを実行し、その結果をレイアウトページですでに設定されているテキストフィールドに出力します。

私が知っている、probalyそこにこのような話題があるが、私は本当に何か良い答えを見つけるように見えることはできません。..

答えて

0

を追加する必要がありますレイアウトXMLのアクティビティを追加するには、android:onClick="yourMethod"をボタンに追加します。活動自体は

、このようなメソッドを作成します:

public void yourMethod(View view){ 

} 

のonClickが自動的にこのメソッドにアクセスします。

このメソッドでは、クラスPasswordGeneratorにアクセスし、静的メソッドを呼び出すことができます。最終的なコードは次のようになります。

public void yourMethod(View view){ 
    char[] pw = PasswordGenerator.generatePswd(42); 
} 
+1

大変感謝しています! 本当に私を助けました!ベーシックスについても説明していただきありがとうございます。今すぐハングアップしました。 –

0

あなたはmain.xmlに下記のおで

<Button 
    android:id="@+id/button1" 
    android:onClick="generatePswd" 
    android:text="Button1" />