Контроль на ImageView, Андроид Студио

Добрый вечер парни, этот раз хотел они я будут сотрудничать с процессом, который я реализую, и он состоит в том, чтобы брать (n) количество фотографий и помещать их dinámicamente в LinearLayout, проблема состоит в том, что, когда я добавляю их, он остается достаточно широким espcio между каждой статьей этой формы:

Interfaz después de tomar la foto y cargada en el LinearLayout

Нормальный формуляр, перед тем, как снимать: introducir la descripción de la imagen aquí

Это код Java моего процесса:

   public void TomarFoto(View view){
        nombre_imagen = GetNombre();
        Intent intento1 = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
        File foto = new File(getExternalFilesDir(null), nombre_imagen + ".jpg");
        intento1.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(foto));
        startActivityForResult(intento1, TAKE_PICTURE);
    }

И это XML, откуда присоединяются изображения:

                    

                        

Я благодарен за ваше сотрудничество!!

1
задан 10.02.2017, 22:07
2 ответа

так консультирования, наконец encontré soluci¦n

ImageView la_imagen = new ImageView(this);
            la_imagen.setLayoutParams(new DrawerLayout.LayoutParams(300, 300));
            la_imagen.setScaleType(ImageView.ScaleType.CENTER_CROP);
            la_imagen.setPadding(10, 10, 10, 10);

            Bitmap bitmap1 = BitmapFactory.decodeFile(getExternalFilesDir(null) + "/" + nombre_imagen + ".jpg");
            la_imagen.setImageBitmap(bitmap1);
            LinearLayout layout = (LinearLayout) findViewById(R.id.Fotografias);
            layout.addView(la_imagen);

Я Благодарен за ваши комментарии и помощь, которые подали достаточно мне! :)

1
ответ дан 24.11.2019, 11:11

Может быть, я ориентировал тебе больше этот код:

public class MainActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        //Get the widgets reference from XML layout
        ImageView iv = (ImageView) findViewById(R.id.iv);
        TextView tv = (TextView) findViewById(R.id.tv);

        //Get the ImageView LayoutParams and assign ImageView height to 300 pixels
        iv.getLayoutParams().height = 300;

        //Get the ImageView LayoutParams and assign ImageView width to 300 pixels
        iv.getLayoutParams().width = 300;

        //************ Uncomment any section and comment other sections to view effect *********

        /*************************** ScaleType = CENTER ********************************/
        //Center the image in the view, but perform no scaling.
        //iv.setScaleType(ImageView.ScaleType.CENTER);
        //tv.setText("ScaleType = CENTER");
        /******************************************************************************/

        /*************************** ScaleType = CENTER_CROP ********************************/
        /*
            Scale the image uniformly (maintain the image's aspect ratio) so that both dimensions
            (width and height) of the image will be equal to or larger than the corresponding
            dimension of the view (minus padding).
        */
        //iv.setScaleType(ImageView.ScaleType.CENTER_CROP);
        //tv.setText("ScaleType = CENTER_CROP");
        /******************************************************************************/

        /*************************** ScaleType = CENTER_INSIDE ********************************/
        /*
            Scale the image uniformly (maintain the image's aspect ratio) so that both dimensions
            (width and height) of the image will be equal to or less than the corresponding
            dimension of the view (minus padding).
         */
        //iv.setScaleType(ImageView.ScaleType.CENTER_INSIDE);
        //tv.setText("ScaleType = CENTER_INSIDE");
        /******************************************************************************/

        /*************************** ScaleType = FIT_CENTER ********************************/
        //Scale the image using CENTER.
        //iv.setScaleType(ImageView.ScaleType.FIT_CENTER );
        //tv.setText("ScaleType = FIT_CENTER");
        /******************************************************************************/

        /*************************** ScaleType = FIT_END ********************************/
        //Scale the image using END.
        //iv.setScaleType(ImageView.ScaleType.FIT_END);
        //tv.setText("ScaleType = FIT_END");
        /******************************************************************************/

        /*************************** ScaleType = FIT_START ********************************/
        //Scale the image using START.
        //iv.setScaleType(ImageView.ScaleType.FIT_START);
        //tv.setText("ScaleType = FIT_START");
        /******************************************************************************/

        /*************************** ScaleType = FIT_XY ********************************/
        //Scale the image using FILL.
        //iv.setScaleType(ImageView.ScaleType.FIT_XY);
        //tv.setText("ScaleType = FIT_XY");
        /******************************************************************************/

        /*************************** ScaleType = MATRIX ********************************/
        //Scale using the image matrix when drawing.
        iv.setScaleType(ImageView.ScaleType.MATRIX);
        tv.setText("ScaleType = MATRIX");
        /******************************************************************************/
    }
}

ты можешь смотреть поведение в этом соединение номер 5.

ты Можешь идти descomentado, чтобы идти provando.

, Если ты обращаешь внимание, использует ScaleType = MATRIX комментирует эту часть и descomenta ScaleType = FIT_XY.

Что-либо подобное.

..//
        /*************************** ScaleType = FIT_XY ********************************/
        //Scale the image using FILL.
        iv.setScaleType(ImageView.ScaleType.FIT_XY);
        tv.setText("ScaleType = FIT_XY");
        /******************************************************************************/

        /*************************** ScaleType = MATRIX ********************************/
        //Scale using the image matrix when drawing.
        //iv.setScaleType(ImageView.ScaleType.MATRIX);
        //tv.setText("ScaleType = MATRIX");
        /******************************************************************************/
    }

Надеялся, что то, что ты ищешь.

0
ответ дан 24.11.2019, 11:11

Теги

Похожие вопросы