使用Android Studio,为什么包含在LinearLayout小部件中的TextView显示会被截断?

时间:2019-03-09 06:45:19

标签: java android android-bitmap

我想将“显示”的以下部分提取为PNG文件的图像。

<LinearLayout
       android:layout_width="match_parent"
       android:layout_height="match_parent"
       android:id="@+id/Layout">
       <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
           android:layout_width="fill_parent"
           android:layout_height="fill_parent">
           <ImageView
               android:layout_width="match_parent"
               android:layout_height="fill_parent"
               android:id="@+id/Image_view"
               />

           <TextView
               android:id="@+id/text_view1"
               android:layout_width="wrap_content"
               android:layout_height="wrap_content"
                />
       </FrameLayout>

   </LinearLayout>

为此,我使用以下代码

list.add("Raghul s");
list.add("Name 2");
list.add("Name 3");
for(int i=0;i<list.size();i++)
{
LinearLayout view = (LinearLayout) findViewById(R.id.Layout);
txt = (TextView) findViewById(R.id.Text_View1);

txt.setText(list.get(i));

view.setDrawingCacheEnabled(true);
view.buildDrawingCache(true);
Bitmap bitmap = Bitmap.createBitmap(view.getDrawingCache());
view.setDrawingCacheEnabled(false);

bs = new ByteArrayOutputStream();
bs.compress(Bitmap.CompressFormat.PNG, 40, bitmap);

try {
    file = new File("Image.png");
    file.createNewFile();
    ws = new FileOutputStream(file);
    ws.write(bs.toByteArray());
    ws.close();
    } 
catch (Exception e)
    {
    e.printStackTrace();
    }
 }

执行此代码时,我获得了一个PGN图像,其中Raghul的单词被部分截断,如下图所示

enter image description here 对于名称2和名称3:

enter image description here

发生了什么事?

为什么“ Raghul s”和“ name 2”被截断了?

如何解决此问题?

0 个答案:

没有答案