我正在构建一个聊天应用程序,所以我想在当前视图中添加元素(用户图片和消息)。问题出在showMessage函数中,没有发生但没有错误。
这是我的代码:
ChatActivity - > showMessage:
RelativeLayout rly = new RelativeLayout(ChatActivity.this);
rly.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT));
LayoutInflater inflater = getLayoutInflater();
View viewToAppend = inflater.inflate(R.layout.messages,null);
rly.addView(viewToAppend);
消息XML:
<ImageView
android:id="@+id/imageView1"
android:layout_width="40dp"
android:layout_height="40dp"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:src="@drawable/fede" />
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginLeft="10dp"
android:layout_toRightOf="@+id/imageView1"
android:text="messagetext" />
</RelativeLayout>
更新
添加setContentView(rly);工作,但用“xml loaded”替换所有内容,我想追加它,而不是全部替换。
答案 0 :(得分:0)
你可能会尝试代码。比如
LayoutInflater inflater = (LayoutInflater) this
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
可能会成功运作。祝你好运!
答案 1 :(得分:0)
如果你想为inflater添加一个布局,你可以使用inflate方法,并使用布局id作为参数。
View v = ((LayoutInflater) context.getSystemService( Context.LAYOUT_INFLATER_SERVICE )).inflate(R.layout.info_window_adapter_layout, null);
在上下文中对活动上下文的引用
答案 2 :(得分:0)
您创建一个新的RelativeLayout并将消息视图添加到它,但您从不将RelativeLayout附加到内容视图。在布局xml中为您的主布局指定一个ID(例如&#39; main_layout&#39;),然后添加:
RelativeLayout mainLayout = (RelativeLayout) findViewById(R.id.main_layout);
mainLayout.addView(rly);