2016-12-23 4 views
-1

私はこのWindowsのJavaプログラムをAndroidのビルドに取り込もうとしてきましたが、これを成功させることができませんでした。プログラムは、入力された文字列を単語に変換します。どのように私はAndroidのコードがあなたがループのためにあなたが手紙にあなたのコンポーネントのテキストを設定しているのWindowsWindowsのjavaプログラムをAndroidのビルドに組み込む

チェックアウトコード

import android.app.*; 
import android.os.*; 
import android.view.*; 
import android.widget.*; 

public class SubActivity extends Activity 
{ 
@Override 
protected void onCreate(Bundle savedInstanceState) 
{ 
    super.onCreate(savedInstanceState); 
    requestWindowFeature(Window.FEATURE_NO_TITLE); 
    getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, 
         WindowManager.LayoutParams.FLAG_FULLSCREEN); 
    setContentView(R.layout.main2); 
} 

//From here is problem. Please help me in fixing it 
public void RevOnClick(View view) 
{ 
    EditText main2EditText1 =(EditText)findViewById(R.id.main2EditText1); 
    String sen = main2EditText1.getText().toString(); 
    String[] senRev = sen.split("\\b"); 

    for (int n = senRev.length - 1; n >= 0; n--) 
    { 

     TextView main2TextView1 = (TextView)findViewById(R.id.main2TextView1); 
     main2TextView1.setText(senRev[n]); 
    } 
} 
} 

答えて

0

をしないだけのような文章を逆にするのですかあなたは現在反復しています。​​を使用して、それが正常に動作するはずsetText()に一度だけ、それを渡すStringを逆にすることによって:

public void RevOnClick(View view) 
{ 
    EditText main2EditText1 =(EditText)findViewById(R.id.main2EditText1); 
    String sen = main2EditText1.getText().toString(); 
    String[] senRev = sen.split("\\b"); 

    // use a StringBuilder to assemble the reversed sentence 
    StringBuilder result = new StringBuilder(); 

    for (int n = senRev.length - 1; n >= 0; n--) 
    {  
     // append each word 
     result.append(senRev[n]); 

     if (n > 0) { 
      // if there are more words add a ' ' 
      result.append(" "); 
     } 
    } 

    TextView main2TextView1 = (TextView)findViewById(R.id.main2TextView1); 
    main2TextView1.setText(result.toString()); 
} 
+0

氏Oschlueter、あなたの貢献に感謝します。あなたのコードは、文字ではなく、単語によってテキストを逆転させました。プログラムは、文の完全な逆転を出力する必要があります。 "cool dude"は "lovely edud"ではなく "dude cool"を出力するはずです。私はそれをWindowsコンソールでプログラムを構築することができましたが、アンドロイドで同じようにするのは難しい部分です。より多くのアイデアが心に浮かぶなら、引き続き助けてください。ありがとうございます。 – Nono

+0

私のコードを更新しました。もう一度やり直してください:-) – oschlueter

+0

また、問題の内容を明確にしてください。あなたのコードに基づいて、私はそれが逆の文の代わりに単一の単語を表示すると仮定します、それは正しいですか? – oschlueter

関連する問題