2011-07-21 11 views
0

私はすでにこの投稿を読んでいます:Making TextView scrollable on Android成功なし。黒のスペースがTextViewのある enter image description hereTextViewをスクロール可能にする+ Androidのバグ

私のアプリはこのようになります。これは、このようなXMLで宣言されています。

<TextView 
android:id="@+id/consola" 
android:layout_width="320px" 
android:layout_height="333px" 
android:layout_alignParentTop="true" 
android:layout_alignParentLeft="true" 
android:scrollbars = "vertical" 
android:gravity="top|left" 
android:inputType="textMultiLine" 
> 
</TextView> 

そして、私のコードは、ボタンが押されたときのEditTextにテキストを取り、そのテキストとのTextViewで新しい行を書き込みます。コードは次のようになります。

public class HelloworldActivity extends Activity { 
/** Called when the activity is first created. */ 
@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 

    final TextView miConsola = (TextView) findViewById(R.id.consola); 
    miConsola.setMovementMethod(new ScrollingMovementMethod()); 

    final EditText lineaComando = (EditText) findViewById(R.id.linea_comando); 
    final Button botonConectar = (Button) findViewById(R.id.boton_conectar); 
    final Button botonEnviar = (Button) findViewById(R.id.boton_enviar); 

    botonEnviar.setEnabled(false); 

    botonConectar.setOnClickListener(new OnClickListener() { 
     public void onClick(View v) { 
      // Intentaremos conectar por bluetooth aqui 
      botonConectar.setEnabled(false); 
      botonEnviar.setEnabled(true); 
     }    
     }); 

    botonEnviar.setOnClickListener(new OnClickListener() { 
     public void onClick(View v) { 
      // Enviamos el comando 
      CharSequence comando = lineaComando.getText(); 
      miConsola.append(comando+"\r\n"); 
     }    
     }); 
    miConsola.append("Esto es una prueba\r\n"); 
    miConsola.append("Esto es otra prueba\r\n"); 


} 

}

しかし、テキストはのTextViewの底に到達したとき、それはまだのEditText以上の新しい行を書き込み、私は上に行く場合、何のスクロールバーは表示されません。

私が間違っていることは何ですか?

答えて

1

テキストビューを垂直に配置するScrollView.Setの高さを設定するテキストビューの場合と同じように固定高さを表示します。次に、テキストビューの幅と高さにwrap_contentを設定します。

1

xmlレイアウトでハードコードされたピクセル値を使用するのは最良の方法ではありません。相対レイアウトを使用し、TextViewをEditTextの上に設定します。 TextViewsをScrollViewsにも配置しています(属性の上に相対レイアウトを使用してそれらを保持します)。

+0

私は知っているが、それは唯一のテストです...実際に私の2番目のアンドロイドプロジェクト。私は確かに相対レイアウトを使用します:) –

関連する問題