2017-07-02 3 views
0

Agnostically View型のオブジェクトのテキストを取得するにはどのように我々は、使用してそのIDを取得するには、レイアウトのすべてのビューを横断している、その名を知らなくても、我々は現在表示レイアウトを認識している、

id = container.getChildAt(i).getId() 

その後、我々は使用してそのビューに割り当てられたテキストを取得しようとしている、その後

view = findViewById(id) 

使用してビューにobtaind IDを変換

view.getText() 

'タイプのオブジェクトに' .getText 'メソッドが定義されていません。

タイプビューのオブジェクトに割り当てられたテキストを取得するように教えてください。

+0

のように行うことができますか? 'R.id.some_name'を意味する - 実行時に存在する名前ではありません。静的int型のJava識別子であり、int型のソースコードのみです。 'getText()' - このプロパティを持つ特定のクラスのインスタンスのプロパティの取得です。レイアウトにはそのような – atlascoder

答えて

1

instanceofを使用してViewのタイプを確認し、TextViewにキャストして値を取得できます。

例:代わりにIDを取得し、あなたがコンテナから子を使用することができますfindViewById(id)を使用してビューを見つける

if (view instanceof Textview) 
    { 
     ((TextView)view).getText(); 
    } else if (view instanceof EditText) 
    { 
    ((EditText)view).getText(); 
    } 

すなわち、あなたはレイアウトやビュー場合は、名前の下に何を意味しています。この

if (container.getChildAt(i) instanceof TextView) 
{ 
.... 
} 
+0

ok ..がありませんが、私は、私が得ているビューがTextViewかEdittextか、まったく何か分かっていませんか? – user2121

+0

あなたの可能性に対して複数のinstanceofを使用することができます.. –

+0

例:インスタンスの編集テキスト –

関連する問題