TableLayout Android java установлен на полное право? - PullRequest
0 голосов
/ 29 февраля 2012
public void responsePost(Editable editable)
    {
         TableLayout chatbox = (TableLayout)findViewById(R.id.chatbox);
         TableRow tr1 = new TableRow(this);
         tr1.setLayoutParams(new LayoutParams( LayoutParams.FILL_PARENT,LayoutParams.WRAP_CONTENT));
         TextView textview = new TextView(this);
         textview.setText(editable);
       //  textview.getTextColors(R.color.)
         textview.setTextColor(Color.YELLOW);

         tr1.addView(textview);
         chatbox.addView(tr1, new TableLayout.LayoutParams(
         LayoutParams.FILL_PARENT,
         LayoutParams.WRAP_CONTENT));

           textview.setGravity(Gravity.RIGHT);    
    }

Как я могу сделать так, чтобы все пути вправо?и не чуть-чуть?Я использовал setGravity (Gravity.RIGHT), но это не сработало.

Есть изображение того, что он делает.

1 Ответ

0 голосов
/ 29 февраля 2012

Мне нужно немного больше деталей, я не могу продублировать ваш макет, что у вас есть в вашем основном макете, и какой код у вас есть в onCreate для действия?

Все, что вам нужно, этоустановите растягиваемые столбцы:

chatbox.setColumnStretchable(1, true);

и вам нужна одна дополнительная строка, оставьте ее пустой

TextView col1 = new TextView(this);
col1.setText("");
tr1.addView(col1);

например, полный код может быть:

public class So extends Activity {

    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        Button button = (Button) findViewById(R.id.button); 

        button.setOnClickListener(new View.OnClickListener() {
            // anonymous inner class
            public void onClick(View view) {
                EditText editText1 = (EditText) findViewById(R.id.edit_text);
                Editable editable = editText1.getText();
                responsePost(editable);
                editText1.setText("");
            }
        });
    }

    public void responsePost(Editable editable) {
        TableLayout chatbox = (TableLayout) findViewById(R.id.chatbox);
        TableRow tr1 = new TableRow(this);
        // add these lines here
        TextView col1 = new TextView(this);
        col1.setText("");
        tr1.addView(col1);
        TextView textview = new TextView(this);
        textview.setGravity(Gravity.RIGHT);
        textview.setText(editable);
        textview.setTextColor(Color.YELLOW);
        tr1.addView(textview);
        // and this line
        chatbox.setColumnStretchable(1, true);
        chatbox.addView(tr1, new TableLayout.LayoutParams(
                LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT));
    }
}
...