用备用位置创建短信气泡

时间:2012-07-08 12:22:07

标签: android android-layout

我每次按下按钮时都会尝试添加TextView。但事情是我希望它在短信应用程序中添加。 第一次单击按钮时,TextView将位于屏幕的左侧。下次单击该按钮时,新创建的TextView应位于右侧。

我尝试使用以下代码,但它无效。

public void sendMessage(View view){

    EditText editText=(EditText)findViewById(R.id.edit_message);
    String message=editText.getText().toString();


    LinearLayout layout=(LinearLayout)findViewById(R.id.layout01);


    TextView text=new TextView(this);
    text.setText(message);
    text.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT));
    layout.setOrientation(LinearLayout.VERTICAL);
    if(flag){
        text.setGravity(Gravity.LEFT);          
    }
    else
        text.setGravity(Gravity.RIGHT);
    flag=!flag;
    layout.addView(text);
}

'flag'是布尔类型,在类的开头声明。

编辑 -

我是否有可能再创建两个布局(一个用于在左侧显示TextView,另一个用于在右侧显示)。但我不知道如何在同一个屏幕上使用不同的布局。

感谢您的帮助

1 个答案:

答案 0 :(得分:0)

public void sendMessage(View view){

    EditText editText=(EditText)findViewById(R.id.edit_message);
    String message=editText.getText().toString();


    LinearLayout layout=(LinearLayout)findViewById(R.id.layout01);


    TextView text=new TextView(this);
    text.setText(message);
    text.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT));
    layout.setOrientation(LinearLayout.VERTICAL);
    if(flag){
        text.setGravity(Gravity.LEFT);
        flag=!flag;          
    }
    else
      {
        text.setGravity(Gravity.RIGHT);
    flag=!flag;
      }
    layout.addView(text);
}