【问题标题】:How to get the right context如何获得正确的上下文
【发布时间】:2012-11-09 22:47:24
【问题描述】:

在此处的答案的帮助下,我设法通过为它们创建图像视图,将使用平板电脑拍摄的照片添加到线性布局中。 页面查看器加载了许多相同布局的副本,就像布局是自定义控件一样。每个布局都有一个按钮来拍摄照片并将其添加(或应该)到自己的线性布局中。

但是……

拍完照片后,它会被放到线性视图中,但它不在正确的页面中。

使用此代码将其放置在线性布局中:

protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);

    Bitmap mBitmap;
    String _path = Environment.getExternalStorageDirectory().toString() + File.separator + "photo_" + String.valueOf(requestCode) + ".png";
    mBitmap = BitmapFactory.decodeFile(_path);
    if (mBitmap == null) {
        // bitmap still null
    } else {

        byte[] imageData = null;

        try {

            final int THUMBNAIL_SIZE = 64;

            Float width = new Float(mBitmap.getWidth());
            Float height = new Float(mBitmap.getHeight());
            Float ratio = width / height;
            mBitmap = Bitmap.createScaledBitmap(mBitmap, (int) (THUMBNAIL_SIZE * ratio), THUMBNAIL_SIZE, false);

            ByteArrayOutputStream baos = new ByteArrayOutputStream();
            mBitmap.compress(Bitmap.CompressFormat.JPEG, 100, baos);
            imageData = baos.toByteArray();

        } catch (Exception ex) {

        }


        ImageView iv = new ImageView(this);
        LayoutParams params = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT);
        iv.setLayoutParams(params);
        iv.setImageBitmap(mBitmap);
        iv.setTag(_path);


        LinearLayout lvp = (LinearLayout) findViewById(R.id.lvPhotos);
        lvp.addView(iv);

    }

}

显然我不应该将 this 用于创建的图像视图,但是如何获取单击相机按钮的页面的上下文?

rg, 埃里克

【问题讨论】:

    标签: android android-layout android-intent android-widget


    【解决方案1】:

    好的,你的问题就在这里:

    LinearLayout lvp = (LinearLayout) findViewById(R.id.lvPhotos);
    

    您会找到放置在当前内容视图上的线性布局。你需要找到它应该在哪个线性......

    LinearLayout lvp = (LinearLayout) someView.findViewById(R.id.lvPhotos);
    

    但我猜这不是一个很好的解决方案。您可能想要设置一个数组来保存您的视图实例,以便您可以更轻松地找到它们...

    【讨论】:

    • 所以有了一个全局数组,然后是一个额外的意图,我应该能够得到正确的视图?听起来像是个计划。谢谢
    猜你喜欢
    • 1970-01-01
    • 2023-03-05
    • 1970-01-01
    • 2022-08-22
    • 1970-01-01
    • 2021-12-25
    • 2014-03-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多