2011-02-10 5 views
0

私は、文字列 "strResponse"を保持するedittextボックスで構成されるクラスを持っています。別のクラスでこの文字列にアクセスしたいと思います。基本的にはユーザーは何でも入力し、もう一方のクラスはその文字列を受け取り、テキストメッセージで送信します。
私はそれをハードコードしていれば、そのコードは正常に動作します。しかし、私は、メッセージが他のクラスから何を伝えるべきかをユーザが定義したいと思っています。 私はグローバル変数を考えていましたが、今まで運がなかった。別のクラスの文字列値にアクセスするには?

+0

クラス構造はどのように見えますか? UIタイプのインタラクションでは、通常、イベント処理メカニズムを使用する必要があります。ここでは、「strResponse」がedittextボックスで変更されたときにメッセージ送信を行うクラスに通知されます。 –

+0

こんにちはDJ、このメカニズムはどのように機能しますか? – GrumP

答えて

1

ハードコーディングはどういう意味ですか?ここにあなたのコードを投稿できますか?

通常、クラス2がユーザーからの入力を受け取っている場合は、まともなデザインがクラス1に「取得」されません。

デザインは何かでなければなりません。クラス2は入力を受け取り、一度入力が完了すると、クラス1に更新値を通知します。

送信/フラグ/通知は、さまざまな方法で実行できます。デザインによって異なります。

+0

私はこれを特定のクラスに持っています - String strResponse = responseText.getText()。toString();そしてこれは:String message = "あなたのメッセージを受け取りました!"; \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t \t SmsManager SMS = SmsManager.getDefault()。 \t \t \t \t \t \t \t \t sms.sendTextMessage(NULL、NULL、メッセージ、ヌル、から)。 "message"文字列を含むテキストメッセージを送信する別のクラスです。私は、編集テキストボックスに格納された文字列を送信したい。 – GrumP

+0

は2つの独立したクラスがあり、これらの2つの独立したクラスが1つのクラスに関連付けられている必要があります。 MainClassには、入力を受けている「特定の」クラスが含まれている必要があります。入力が完了すると、mainclassはそのクラスのparticularClass.getMessage()から文字列を取得し、それをSMSManager.sendMessage()に送信します。 –

+0

あなたの特定のクラスにはSmsManagerオブジェクトが含まれていなければなりません。入力が完了すると、SmsManagerのメソッドを呼び出してsmsを送信する必要があります。 –

1

私は、ダイアログボックスクラスの文字列値をメインのアクティビティクラスにアクセスする必要があると思います。 (ちょっとした例)

これを行うにはインターフェイスが必要です。私はリンクがダイアログクラスで上記のリンクの文字列値では

http://developmentality.wordpress.com/2009/10/31/android-dialog-box-tutorial/

を支援するインタフェースを使用した主な活動のコールにアクセスしていると思います。

これが問題を解決することを願っています。

関連する問題