第 1 步
您的视图应该位于 RelativeLayout 内,以便将它们放在彼此的顶部。当你按下你的 ImageView 时,小的会被设置为 Visible(它必须在 xml 文件中不可见或以编程方式)。
imgV.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
imageViewButton.setVisibility(View.VISIBLE);
}
});
第 2 步
当您按下小图像时,EditText 将变得可见。同上。
imageViewButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
editText.setVisibility(View.VISIBLE);
}
});
第 3 步
如果您将宽度设置为 match_parent 并将高度设置为 wrap_content,您的 EditText 会在键入时自动展开。
<EditText
android:id="@+id/editText1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10" >
</EditText>
第 4 步
当你想保存你的布局时,在你的 onClick 事件中实现它。 (在下面的例子中,它是一个LinearLayout,但你会有一个RelativeLayout,我想你可以根据你的需要改变它)
根据How to save the layout view as image or pdf to sd card in android?上的回答
在清单文件中添加权限
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
使用下面的代码
LinearLayout content = findViewById(R.id.rlid);
content.setDrawingCacheEnabled(true);
Bitmap bitmap = content.getDrawingCache();
File file,f;
if (android.os.Environment.getExternalStorageState().equals(android.os.Environment.MEDIA_MOUNTED))
{
file =new File(android.os.Environment.getExternalStorageDirectory(),"TTImages_cache");
if(!file.exists())
{
file.mkdirs();
}
f = new File(file.getAbsolutePath()+file.seperator+ "filename"+".png");
}
FileOutputStream ostream = new FileOutputStream(f);
bitmap.compress(CompressFormat.PNG, 10, ostream);
ostream.close();
}
catch (Exception e){
e.printStackTrace();
}