我是材料设计和插件以及一些功能的新手。有没有一个例子我可以查看或下载任何样本,告诉我如何隐藏/显示我的编辑文本框点击?这是我的代码:
<EditText
android:id="@+id/messageEdit"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_toLeftOf="@+id/chatSendButton"
android:autoText="true"
android:hint="type message" />
<Button
android:id="@+id/chatSendButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentRight="true"
android:background="@color/background_floating_material_dark"
android:text="Send MSG"
android:textColor="@color/background_material_light"/>
我想要做的是在FAB中包含这个,所以当我点击fab按钮时,这个edittext视图(带按钮)会弹出,但一旦弹出它就会一直停留在那里直到我再次按下FAB按钮。已经实现的任何此类功能我可以遵循?我更喜欢最简单,最有效的方法。有线索吗?
答案 0 :(得分:4)
您的FAB中不能包含这些视图。 用xml这样声明你的fab:
<android.support.design.widget.FloatingActionButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ic_edit"
android:layout_gravity="right|bottom"
android:id="@+id/edit"
android:theme="@style/Widget.Design.FloatingActionButton" />
在您的活动中onCreate():
FloatingActionButton edit = (FloatingActionButton)findViewById(R.id.edit);
edit.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View v) {
EditText editText = (EditText)findViewById(R.id.messageEdit);
if(editText.getVisibility() == View.VISIBLE)
{
editText.setVisibility(View.INVISIBLE);
}
else {
editText.setVisibility(View.VISIBLE);
}
}
});