屏幕一侧的黑条在imageView上捕获

时间:2013-11-17 08:06:06

标签: android xml imageview screen-capture

您好我正在尝试使用Imageview的屏幕截图,我有一些绘图。 我可以做绘图部分并保存部分,因为我使用下面的方法。 然而它在我的屏幕截图一侧给了我两个黑条。我不确定如何在拍摄屏幕截图时摆脱那些。

//In constructor to let u guys know how i set up the imageView
imageView.setImageBitmap(bitmap);
...
imageView = (ImageView) this.findViewById(R.id.ImageView);
...

按下一次按钮后捕获imageView屏幕截图的方法

case R.id.BtnSave:

        imageView.setDrawingCacheEnabled(true);
        Bitmap bm = Bitmap.createBitmap(imageView.getDrawingCache());
        Toast.makeText(Draw.this, "Taking Screenshot", Toast.LENGTH_SHORT).show();

            MediaStore.Images.Media.insertImage(getContentResolver(), bm, null, null);


    break;

XML:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:id="@+id/RL"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:paddingBottom="@dimen/activity_vertical_margin"
        android:paddingLeft="@dimen/activity_horizontal_margin"
        android:paddingRight="@dimen/activity_horizontal_margin"
        android:paddingTop="@dimen/activity_vertical_margin"
        tools:context=".Draw" >

    <ImageView
        android:id="@+id/ImageView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_above="@+id/btnLoad2"
        android:layout_alignParentLeft="true"
        android:layout_alignParentRight="true"
        android:layout_alignParentTop="true"
        android:src="@drawable/ic_launcher" />

    <Button
        android:id="@+id/BtnSave"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignRight="@+id/ImageView"
        android:layout_alignTop="@+id/btnLoad2"
        android:text="Save Picture" />

    <Button
        android:id="@+id/btnLoad2"
        style="?android:attr/buttonStyleSmall"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/ImageView"
        android:layout_alignParentBottom="true"
        android:layout_marginBottom="40dp"
        android:layout_toLeftOf="@+id/BtnSave"
        android:text="@string/Load" />

</RelativeLayout>

这是在模拟器上显示的eclipse的屏幕截图,然后在顶部绘制一条线然后保存并加载回imageView。第一个截图是在之前,第二个是在我从画廊加载屏幕截图之后,侧面有两个黑条。我累了拿走填充物,但它没有帮助。我厌倦了寻找有类似问题的人,但找不到多少。是否可以使用

imageView.getWidth(),imageView.getHeight()

在我的bmp创建中与getdrawingcache在同一行?

enter image description here

enter image description here

0 个答案:

没有答案