当前位置: 首页 > 知识库问答 >
问题:

水平图像视图库

诸葛砚文
2023-03-14

我试图建立自定义的水平滚动视图画廊,而不是使用android b/c中的画廊小工具,它在api 16中已被否决。我可以在滚动视图中添加图像,但当用户在水平滚动视图中单击相应的缩略图时,我如何更改较大的图像视图。这是代码

private Integer[] Imgid = {
        R.drawable.monk1,
        R.drawable.mon2,
        R.drawable.mon3,
};

LinearLayout linearLayout1 = (LinearLayout) findViewById(R.id.Linear);

for(x=0;x<15;x++) {
    Bitmap bitmapOrg = BitmapFactory.decodeResource(getResources(),Imgid[x]);

    int width = bitmapOrg.getWidth();
    int height = bitmapOrg.getHeight();
    int newWidth = 200;
    int newHeight = 200;

    float scaleWidth = ((float) newWidth) / width;
    float scaleHeight = ((float) newHeight) / height;

    Matrix matrix = new Matrix();

    matrix.postScale(scaleWidth, scaleHeight);
    matrix.postRotate(0);

    Bitmap resizedBitmap = Bitmap.createBitmap(bitmapOrg, 0, 0,
                  width, height, matrix, true);
    BitmapDrawable bmd = new BitmapDrawable(getResources(),resizedBitmap);

    ImageView imageView = new ImageView(this);
    imageView.setPadding(2, 0, 9, 5);
    imageView.setImageDrawable(bmd);
    imageView.setTag(x);

    imageView.setOnClickListener(new OnClickListener(){
        @Override
        public void onClick(View v) {
            imgView.setImageResource(Imgid[]); // large imageview
        }
    });

    linearLayout1.addView(imageView);
}

共有2个答案

万开畅
2023-03-14

点击时,您是否尝试过为imageview设置布局参数?

戈华茂
2023-03-14

你必须做这样的事

您需要打开一个意向才能查看图像,如下所示:

Intent-Intent=新的Intent(Intent.ACTION_VIEW);Uri=Uri.parse(“android。resource://your.package.name/“R.drawable.monk1,)intent.setData(uri);startActivity(intent);

 类似资料:
  • 我在类似的问题中搜索过,试过几个答案都没有解决..我有显示城市名称和一些数据的水平回收器视图,问题是我在主回收器视图适配器中的每个位置放置了如下图所示的画布条形图或RV图表,为了水平滚动该图表,我将图表放在水平滚动视图中,以便在从右向左滚动该图表时查看长水平方向上的图表数据,反之亦然,但实际上它并不水平滚动,只有主回收器视图水平滚动到 当触摸它时显示城市,当触摸它滚动(冻结)时RV内的图表没有滚动

  • 我正在尝试为水平回收视图实现ItemTouchHelper。(将布局管理器设置为LinearLayoutManager,方向为LinearLayoutManager.HORIZONTAL)。例如,我想在向下滑动并向左或向右拖动以交换项目时删除项目。 我所经历的所有示例都解释了ItemTouchHelper的垂直回收站视图或网格中的项目。 以下示例来自以下链接: https://medium.com

  • 我有一个水平ScrollView,它有两个元素:CardView和水平RecycerView。所以,当用户水平滚动时,我希望这两个元素滚动。 我想有这样的东西:Goal,橙色的线是CardView,黄色的线是RecycerView。当用户滚动时,两个元素滚动,如下所示:Scrolled Goal。 现在在我的应用程序中,当用户滚动时,只有RecycerView滚动。CardView保持在他的位置。

  • 问题内容: 我正在尝试使用CSS将图像水平居中放置。 我正在使用以下HTML代码在屏幕上显示图像: 我正在裁剪图像,因为我只想显示一些图像,并且正在使用以下CSS: 但是,一旦裁切后,我将无法确定如何居中。 有人能帮忙吗? 问题答案: 这样使用绝对位置和保证金位置

  • HiI想知道如何水平翻转和成像,对于一个practce任务,我得到了一个读取图像的代码,将其反转为指示亮度从0到5的图像,我必须翻转图像。 我得到一个错误

  • 我使用绘制图表。我有另一个要求,我需要显示两个图表水平。 我有什么办法可以把这两张图表做成单行吗? 编辑:实际上,我希望它像您的示例一样。为此,您使用了,但这里我使用的是。