Reescalar imagen en android – Stack Overflow en español

*Buenas, tengo una duda con respecto al tema de cargar una imagen desde JSOUP a un ImageView en Android Studio. La cosa es que consigo cargar la imagen, pero se ve muy chiquita y me gustaría que ocupe todo el ancho de la pantalla.

Adjunto imagen descriptiva:

introducir la descripción de la imagen aquí

Este es el layout donde se encuentra el imageView:

<?xml version="1.0" encoding="utf-8"?>
<androidx.cardview.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    style="@style/CardView.Light"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <ImageView
        android:id="@+id/ivPaginas"
        android:layout_width="match_parent"
        android:layout_height="match_parent"/>
</androidx.cardview.widget.CardView>

Este es el layout de la actividad:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".Activities.TMO.TMOLector">

    <LinearLayout
        android:orientation="vertical"
        android:layout_width="match_parent"
        android:layout_height="match_parent">
        <LinearLayout
            android:layout_below="@+id/arriba"
            android:layout_width="match_parent"
            android:layout_height="match_parent">
            <androidx.recyclerview.widget.RecyclerView
                android:id="@+id/recyclerView"
                android:layout_width="match_parent"
                android:layout_height="match_parent" />
        </LinearLayout>
    </LinearLayout>
</RelativeLayout>

El adaptador:

public class TMOLectorAdapter extends RecyclerView.Adapter<TMOLectorAdapter.ViewHolder> {
    private ArrayList<TMOLectorClase> tmoLectorClases;
    private Context context;

    public TMOLectorAdapter(ArrayList<TMOLectorClase> tmoItems, Context context) {
        this.tmoLectorClases = tmoItems;
        this.context = context;
    }

    @NonNull
    @Override
    public TMOLectorAdapter.ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
        View view = LayoutInflater.from(parent.getContext()).inflate(R.layout.adaptador_lectortmo, parent, false);
        return new TMOLectorAdapter.ViewHolder(view);
    }

    @Override
    public void onBindViewHolder(@NonNull TMOLectorAdapter.ViewHolder holder, int position) {
        TMOLectorClase tmoLectorClase = this.tmoLectorClases.get(position);
        Picasso.get().load(tmoLectorClase.getImg()).into(holder.iv);
    }

    @Override
    public int getItemCount() {
        return tmoLectorClases.size();
    }

    public class ViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener {
        ImageView iv;

        public ViewHolder(@NonNull View view) {
            super(view);
            iv = view.findViewById(R.id.ivPaginas);
            view.setOnClickListener(this);
        }

        @Override
        public void onClick(View view) {
            //context.startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse(tmoItems.get(itemPosition).getUrlCapitulo())));
        }
    }

    public void setFilter(ArrayList<TMOLectorClase> newList) {
        tmoLectorClases = new ArrayList<>();
        tmoLectorClases.addAll(newList);
        notifyDataSetChanged();
    }

    public void updateData(ArrayList<TMOLectorClase> items) {
        this.tmoLectorClases = items;
    }
}

Ya probé usando android:scaleType="centerCrop" pero no me sive ya que me corta las imágenes

c – codewarrior interrupciones – Stack Overflow en español

Estoy usando el IDE codewarrior para una CPU MC9S08JM16.

Me gustaría usar una interrupción de un botón. El ejercicio consiste en que cuando quiero darle a un boton se me active un LED. Luego tengo dos ficheros: uno el programa principal y otro el fichero de configuración de la CPU con sus interrupciones.

En el fichero principal tiene esta pinta:

#include "delay.h"
#include <mc9s08jm16.h>


void MCU_init(void); /* Device initialization function declaration */


void main(void) {

/*VARIABLES LOCALES*/
extern bool ON;


/* setup */
MCU_init(); 


/* loop */
for(;;)
{
    if(ON)
    {
        LedVerde = 1;
    }else{
        LedVerde = 0;
    
espera_1s();

} /* loop forever */

}

Y ahora dentro de mi fichero de la configuración tengo:

#include "MCUinit.h"


bool ON = false;

void MCU_init(void)
{
/* Common initialization of the write once registers */

/* SOPT1: COPT=0,STOPE=0 */
SOPT1 = 0x13U;                                      
/* SPMSC1: LVWF=0,LVWACK=0,LVWIE=0,LVDRE=1,LVDSE=1,LVDE=1,BGBE=0 */
...
...//Aqui viene toda la configuracion y es irrelevante para esta duda
...
}/*MCU_init*/


__interrupt void isrVkeyboard(void)
{
   espera_1s(); //Antirrebote

   ON = ~ON;

   KBISC_KBACK = 1; //Desactiva la bandera de la interrupcion
}

La duda es que no funciona correctamente la variable ON y no se como llamar esta variable.
Me da error por ejemplo si lo meto como un parámetro dentro de la función:
__interrupt void isrVkeyboard(bool ON)

o cuando lo dejo tal cuál lo describo aquí al debugguear, los valores de ON son de 0 a 255, luego cambia a 240 luego a 40…. No funciona exactamente la regla ON=~ON.
Quisiera evitar también poner variables globales porque en un código complejo, empieza a fallar el programa debido a las variables globales.

¿Alguna sugerencia?
Gracias

c++ – Agenda Telefonica – Stack Overflow en español

estoy escribiendo una agenda telefonica en C++ usando struct. El problema es que, por alguna razon, cuando quiero ingresar los valores de los distintos campos, hay uno que se salta, y no me permite ingresarlo.

La idea es esta: Una agenda de (por ahora) 4 contactos, con campos a rellenar. Cuando lleno los campos del primer contacto esta perfecto, pero cuando toca completar los campos del segundo, se saltea el campo correspondiente al nombre y pasa derecho al apellido. Dejo el codigo abajo.

#include<iostream>
#include<string.h>
using namespace std;
struct agenda_telefonica{
    char nombre(30);
    char apellido(30);
    int prefijo;
    int telefono;
    } 
    contacto(4);
    
    int main(){
        int i;
        cout<<"ttt***Agenda Telefonica***"<<endl;
        for(i=0;i<4;i++){
            cout<<"Ingrese su nombre: ";
            cin.getline(contacto(i).nombre,30,'n');
            cout<<"ingrese su apellido: ";
            cin.getline(contacto(i).apellido,30,'n');
            cout<<"Ingrese el prefijo: ";
            cin>>contacto(i).prefijo;
            cout<<"Ingrese su telefono: ";
            cin>>contacto(i).telefono;
        }
        for(i=0;i<4;i++){
            cout<<"Contacto "<<i+1<<": "<<endl;
            cout<<contacto(i).nombre<<" "<<contacto(i).apellido<<"n";
            cout<<contacto(i).prefijo<<"-"<<contacto(i).telefono<<endl;
        }
       return 0; 
    }

Gracias por la ayuda!!!

EJERCICIO JAVA MAIN – Stack Overflow en español

El método no esta devolviendo una cadena como quiere tu profesor, estas imprimiendo el resultado desde el método. Eso lo solucionas de esta forma:

public static String suma (int valor1, int valor2){
   int resultado = valor1 + valor2;
   return "El resultado es: " + resultado;
}

Y en el método main llamas a este método dentro de un System.out.println()

Por otro lado te dice que crees una instancia de la clase Reto, y has utilizado los métodos estáticos. Por lo tanto no puedes hacerlo. El método debería de ser así:

public String suma (int valor1, int valor2){
   int resultado = valor1 + valor2;
   return "El resultado es: " + resultado;
}

Y en en la clase main, creas una instancia de la clase Reto:

Reto nombre_objeto = new Reto();

nombre_objeto.suma(5,10);

Indexacion query consulta SQL – Stack Overflow en español

Puedes simplemente añadir el cálculo a la tabla derivada que ya tienes en la consulta:

Por ejemplo:

Select TOP 1 
         p.*
       , d.COMPRAS
       , d.ValorMonetario
From (
    SELECT   a.ClienteID
           , SUM(Cantidad) as COMPRAS
           , sum(TotalPrice) as ValorMonetario
      from dbo.Venta a
     GROUP by a.ClienteID
    ) d inner join dbo.Cliente p on d.ClienteID = p.ClienteID
order by COMPRAS desc

Dicho esto, si bien una venta es una compra, vista del otro lado, te recomiendo no mezclar los términos dentro del código fuente… es mejor ver las cosas desde un solo punto de vista, al menos, a nivel del código. Esto, porque el total de la suma de la cantidad de la tabla de ventas, de pronto se llama compras. Eso lo hace confuso.

Otra cosa que haría es, si el motor lo soporta, utilizar un CTE en lugar de una tabla derivada. Es un cambio trivial al inicio, pero hace que la consulta sea más fácil de extender en el futuro.

with
ResumenVentas as (
SELECT   a.ClienteID
       , SUM(Cantidad) as CantidadVentas
       , sum(TotalPrice) as ValorVentas
  from dbo.Venta a
 GROUP by a.ClienteID
)
Select TOP 1 
         c.*
       , rv.CantidadVentas
       , rv.ValorVentas
 from ResumenVentas rv
      inner join dbo.Cliente c on c.ClienteID = rv.ClienteID
order by rv.CantidadVentas desc

javascript – canvas responsivo – Stack Overflow en español

Hola tengo un canvas que genera un treemap mi problema es que texto que se coloca dentro de los cuadros del treemap se sale de el como en esta imagen

introducir la descripción de la imagen aquí

el codigo donde le doy diseño es el sigueinte

     datasets: (
     {
    label: "Actividades",
    tree: municipios,
    key: 'value',
    groups: ('title'),
    fontColor: 'black',
    fontFamily: 'sans-serif',
    fontSize: 10,
    margin: 0,
    padding: 0,
     backgroundColor: (
          '#F3BBAF','#CD6155','#9C640C','#48D1CC','#a8f2f4','#F5CBA7','#FF8C00','#A9DFBF','#AFEDF3',
          '#95B090','#77D89F','#D196D5','#D4C2DF','#D79EB7','#F1DD86','#FFF0F5','#FFEBCD','#FFCCCC',
          '#ADD8E6','#D8BFD8','#98FB98','#87CEEB','#90EE90','#ADFF2F','#c0c67d','#DDA0DD','#00FF7F',
          '#7CFC00','#5F9EA0','#808B96','#A2D9CE','#baf2de','#A569BD','#E59866','#F1C40F','#FEF5E7',
          '#73C6B6','#EBF5FB'
          ),
      spacing: 0.1,
      borderWidth: 2,
       borderColor: "rgba(180,180,180, 0.15)",
      textAlign:'top'
      }
     )

como puedo hacer para que este sea justificado o responsivo

Red neuronal con R – Stack Overflow en español

Estoy intentando hacer una red neuronal en R. Estos son mis datos, y deseo saber si a oartir de determinadas caracteristicas el resultado del tratamiento para los pacientes es positivo o negativo:
Al conjunto de datos le he llamdo: uno

library(MASS)
ibrary(neuralnet)
library(ggplot2)
set.seed(65)
datos    <- uno
datos<-as.data.frame(datos)
n        <- nrow(datos)
muestra  <- sample(n, n * .70)
train    <- datos(muestra, )
test     <- datos(-muestra, )
maxs      <- apply(train, 2, max)
mins      <- apply(train, 2, min)
datos_nrm <- as.data.frame(scale(datos, center = mins, scale = maxs - mins))
train_nrm <- datos_nrm(muestra, )
test_nrm  <- datos_nrm(-muestra, )
maxs      <- apply(train, 2, max)
mins      <- apply(train, 2, min)
datos_nrm <- as.data.frame(scale(datos, center = mins, scale = maxs - mins))
train_nrm <- datos_nrm(muestra, )
test_nrm  <- datos_nrm(-muestra, )

nms  <- names(train_nrm)
frml <- as.formula(paste("Result_of_Treatment~", 
paste(nms(!nms %in% "Result_of_Treatment"), collapse = " + ")))

El aviso que me da es el siguiente y por eso la red no da los resultados esperados:
AVISO: Warning in if (nchar(cmd) <= width) return(cmd) :
la condición tiene longitud > 1 y sólo el primer elemento será usado

Los datos originales con los que se hacen el script, son unos datos de base de R que se llaman Boston, cuando lo ejecuto con ese conjunto de datos no sale esta advertencia.

datos    <- Boston

Alguien sabe a que se debe este error?????

Imprimir desde android – Stack Overflow en español

Queria saber si alguien me puede ayudar
Estoy desarrollando una aplicacion para realizar ventas en linea desde android, necesito imprimir la factura y el recibo de pago cuando el cliente realize su pago con tarjeta de credito, necesitaria que alguien me recomendara una impresora compatible que me sirva para imprimir y leer la tarjeta de credito a traves de bluetoch.

Un saludo.

Comparar arrays en php – Stack Overflow en español

Buenas tengo un problema, tengo dos arrays en php, el primer arrray se va armando en base a numeros al azar y puede tener hasta 99 posiciones, el segundo array solo tiene 14 posiciones, necesito comparar el primero con el segundo hasta que todos los datos del primer array se encuentren en el sengundo array y asi devolver un TRUE, no se si me eplico bien , dejo dos ejemplos por si acaso

Array ( (0) => 3 (1) => 15 (2) => 21 (3) => 27 (4) => 30 (5) => 36 (6) => 39 (7) => 46 (8) => 51 (9) => 52 (10) => 55 (11) => 62 (12) => 64 (13) => 80 (14) => 81 (15) => 82 (16) => 87 (17) => 88 (18) => 90 )/ /primer array, que se forma al azar,

//Segundo array, solo tiene 14 posiciones
Array ( (0) => 67 (1) => 89 (2) => 8 (3) => 35 (4) => 39 (5) => 54 (6) => 98 (7) => 73 (8) => 13 (9) => 72 (10) => 46 (11) => 60 (12) => 26 (13) => 9 (14) => 23 )

Agradeceria una respuesta gracias

curl php comparar resultado – Stack Overflow en español

gracias por leer mi post, bueno:

Tengo un php con curl el cual hace una consulta y devuelve un resultado.


{"Consultar":{"Apellidos":"FRANCISCO ","vip":false,"Nombre":"nombre "}}

Actualmente tengo que comparar el numero de usuario y si es vip hacer una redirección a una página, y si no lo es a otra diferente.

¿Cómo comparo si es VIP con el resultado que me devuelve arriba?

y en caso de que el resultado sea “false” haga una redireccion y si es “true” haga otra redirección diferente?


<?php 
$user= $_GET('user');

    $curl = curl_init();
        $request =  '';
    curl_setopt($curl, CURLOPT_URL, 'login');
    curl_setopt($curl, CURLOPT_CUSTOMREQUEST, "POST");
    curl_setopt($curl, CURLOPT_HTTPHEADER, ('content-type: application/json'));
    curl_setopt($curl, CURLOPT_POSTFIELDS, $request); 
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
    $result = curl_exec($curl);
    $err = curl_error($curl);
    if($err) {
        echo 'Curl Error: ' . $err;
    } else {
        // header('content-type: application/json');
        $response = json_decode($result, true);
        $token = $response('AuthenticateResult')('AuthToken'); 
        curl_close($curl);




        
/* *************************************************************************************************************************************************** */




        /*SEGUNDA LLAMADA PARA OBTENER EL USUARIO*/
        $curl = curl_init();
            curl_setopt_array($curl, array(
              CURLOPT_URL => "consultarusuario",
              CURLOPT_RETURNTRANSFER => true,
              CURLOPT_ENCODING => "",
              CURLOPT_MAXREDIRS => 10,
              CURLOPT_TIMEOUT => 30,
              CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
              CURLOPT_CUSTOMREQUEST => "GET",
              CURLOPT_POSTFIELDS => "{ "usuario":"" .$user. "" }",
              CURLOPT_HTTPHEADER => array(
                    "authorization: Bearer $token",
                    "content-type: application/json",
                  ),
            ));
            $response = curl_exec($curl);
            $err = curl_error($curl);

            if ($err) {
              echo "cURL Error #:" . $err;
            } else {
              echo $response;
            }
            curl_close($curl);
        }
?>

he intentado algo pero se lo salta, gracias por la ayuda, un saludo.