按钮不起作用:E / To:android.support.v7.widget.AppCompatButton

时间:2016-06-07 18:50:59

标签: android button

我生气了:

我正在使用API​​ LEVEL 23,当我点击按钮时,会出现以下日志:

E/To: android.support.v7.widget.AppCompatButton{5af3e42 VFED..C.. ...PH... 161,642-469,810 #7f0c0070 app:id/btSaveAC1}

并不起作用。有什么好主意吗?

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:background="@drawable/gradiant_fons"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".ActividadesJava.Interno.Actividades">


<EditText
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/txtDesc"

    android:hint="Nombre Actividad"
    android:text="Actividad"
    android:layout_below="@+id/txtDataInicio"
    android:layout_alignParentStart="true" />

    <EditText
        android:layout_width="80dp"
        android:layout_height="wrap_content"
        android:inputType="time"
        android:ems="10"
        android:id="@+id/txtHoraInici"
        android:hint="Hora Inicio"
        android:text="11:00"
        android:layout_alignTop="@+id/txtHiraFi"
        android:layout_alignParentStart="true" />

    <EditText
        android:layout_width="80dp"
        android:layout_height="wrap_content"
        android:inputType="time"
        android:ems="10"
        android:id="@+id/txtHiraFi"
        android:hint="Hora Fin"
        android:layout_below="@+id/txtDesc"
        android:layout_alignEnd="@+id/cbSabado"
        android:layout_toEndOf="@+id/txtHoraInici"
        android:text="12:00" />

    <CheckBox
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginStart="20dp"
        android:text="LU"
        android:id="@+id/cbLunes"
        android:layout_centerVertical="true"
        android:layout_alignParentStart="true"
        android:checked="false"
        android:textColor="#f9f7f7"
        android:buttonTint="#214111"
        android:textSize="12dp"
        android:layout_below="@+id/txtHoraInici" />

    <CheckBox
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="MA"
        android:id="@+id/cbMartes"
        android:checked="false"
        android:textColor="#f9f7f7"
        android:buttonTint="#214111"
        android:textSize="12dp"
        android:layout_alignEnd="@+id/btSaveAC1"
        android:layout_below="@+id/txtHoraInici" />

    <CheckBox
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="MI"
        android:id="@+id/cbMiercoles"
        android:checked="false"
        android:layout_alignTop="@+id/cbMartes"
        android:layout_toEndOf="@+id/cbMartes"
        android:textColor="#f9f7f7"
        android:buttonTint="#214111"
        android:textSize="12dp" />

    <CheckBox
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="JU"
        android:id="@+id/cbJueves"
        android:checked="false"
        android:layout_alignTop="@+id/cbMiercoles"
        android:layout_toEndOf="@+id/cbMiercoles"
        android:textColor="#f9f7f7"
        android:buttonTint="#214111"
        android:textSize="12dp" />

    <CheckBox
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="VI"
        android:id="@+id/cbViernes"
        android:checked="false"
        android:layout_alignBottom="@+id/cbJueves"
        android:layout_toEndOf="@+id/cbJueves"
        android:textColor="#f9f7f7"
        android:buttonTint="#214111"
        android:textSize="12dp" />

    <CheckBox
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="SA"
        android:id="@+id/cbSabado"
        android:checked="false"
        android:layout_alignTop="@+id/cbViernes"
        android:layout_toEndOf="@+id/cbViernes"
        android:textColor="#ffffff"
        android:buttonTint="#214111"
        android:textSize="12dp" />

    <CheckBox
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="DO"
        android:id="@+id/cbDomingo"
        android:checked="false"
        android:layout_alignTop="@+id/cbSabado"
        android:layout_toEndOf="@+id/cbSabado"
        android:textColor="#f9f7f7"
        android:buttonTint="#214111"
        android:textSize="12dp" />

<android.support.v7.widget.AppCompatButton

        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginLeft="10dp"
        android:text="GUARDAR AC"
        android:id="@+id/btSaveAC1"
        android:textColor="#fcfafa"
        android:background="@drawable/buttonborder"
        android:singleLine="false"
        android:layout_below="@+id/cbLunes"
        android:layout_alignStart="@+id/cbLunes" />

    <EditText
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:inputType="date"
        android:ems="10"
        android:id="@+id/txtDataInicio"
        android:text="12/12/2007"
        android:layout_alignParentStart="true" />

    <EditText
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:inputType="date"
        android:ems="10"
        android:id="@+id/txtDataFin"
        android:layout_alignEnd="@+id/cbDomingo"
        android:text="21/12/2058" />

<ListView
        android:layout_width="match_parent"
        android:layout_height="169dp"
        android:id="@+id/lvActividades"
    android:layout_alignParentBottom="true"
    android:layout_toStartOf="@+id/cbDomingo"
    android:layout_alignParentEnd="true" />

Actividades.class

public class Actividades extends AppCompatActivity  implements View.OnClickListener {


private Button mSaveAC;
private ArrayList<Actividad> ActivitatsArrayRecibidos = new ArrayList<Actividad>();
private AdaptadorMetasLista adapter;
private Actividad newActividad;
private EditText mtxtDesc;
private EditText mtxtHoraInici;
private EditText mtxtDataInicio;
private EditText mtxDataFin;
private EditText mtxtHoraFi;
private CheckBox mcbLunes;
private CheckBox mcbMartes;
private CheckBox mcbMiercoles;
private CheckBox mcbJueves;
private CheckBox mcbViernes;
private CheckBox mcbSabado;
private CheckBox mcbDomingo;
private ListView mListView;
private String userOBID;


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

    mSaveAC = (Button) findViewById(R.id.btSaveAC1);

    mtxtDesc= (EditText) this.findViewById(R.id.txtDesc);
    mtxtHoraInici= (EditText) this.findViewById(R.id.txtHoraInici);
    mtxtDataInicio= (EditText) this.findViewById(R.id.txtDataInicio);
    mtxDataFin= (EditText) this.findViewById(R.id.txtDataFin);
    mtxtHoraFi= (EditText) this.findViewById(R.id.txtHiraFi);
    mcbLunes= (CheckBox) this.findViewById(R.id.cbLunes);
    mcbMartes= (CheckBox) this.findViewById(R.id.cbMartes);
    mcbMiercoles= (CheckBox) this.findViewById(R.id.cbMiercoles);
    mcbJueves= (CheckBox) this.findViewById(R.id.cbJueves);
    mcbViernes= (CheckBox) this.findViewById(R.id.cbViernes);
    mcbSabado= (CheckBox) this.findViewById(R.id.cbSabado);
    mcbDomingo= (CheckBox) this.findViewById(R.id.cbDomingo);
    mListView= (ListView) this.findViewById(R.id.lvActividades);

mSaveAC.setOnClickListener(this);
    Log.e("creant inci", "AC");


}


@Override
public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.menu_notificacions, menu);
    getSupportActionBar().setDisplayUseLogoEnabled(true);
    //      getSupportActionBar().setIcon(R.drawable.logo);
    getSupportActionBar().setDisplayShowHomeEnabled(true);

    return true;
}

public boolean onOptionsItemSelected(MenuItem item) {
    String opcio = item.getTitle().toString(); //ITem seleccionat
    Log.e("Opcio_", opcio);
    if (opcio.equals("Salir")){// Lanzar Salir

        Sortir();
    }
   else
    {//Cridem a la classe Menuopcions
        Log.e("MENU_", "MENU OPCIONS");
        MenuOpcions nMO=new MenuOpcions();
        final Context context = this; //creem un context final que será el comntexte actual
        nMO.Selecció(opcio, context,this);
    }
    return super.onOptionsItemSelected(item);
}

public void Sortir(){
    Log.e("MENU_", "SALIR");
    AlertDialog.Builder builder = new AlertDialog.Builder(this);
    builder.setMessage("¿Quieres Salir de MyTime?")
            .setTitle("Advertencia")
            .setCancelable(false)
            .setNegativeButton("Cancelar",
                    new DialogInterface.OnClickListener() {
                        public void onClick(DialogInterface dialog, int id) {
                            dialog.cancel();
                        }
                    })
            .setPositiveButton("Continuar",
                    new DialogInterface.OnClickListener() {
                        public void onClick(DialogInterface dialog, int id) {
                            System.exit(0);
                        }
                    });
    AlertDialog alert = builder.create();
    alert.show();
}



public void onClick(View v) {




    if (v==mSaveAC) {
        Log.e("To",v.toString() );
        this.GuardarActividad();

    }

}



public Boolean CargarActividades(){

  final Boolean[] mValorRetorno = {false};
    BackendlessUser user= Backendless.UserService.CurrentUser();
    String whereClause = "propietarioId = '"+ user.getObjectId().toString() +"'";
    Log.e("WC",whereClause);

    final BackendlessDataQuery dataQuery = new BackendlessDataQuery();
    dataQuery.setWhereClause( whereClause );

    Backendless.Data.of(Actividad.class).find(dataQuery,new AsyncCallback<BackendlessCollection<Actividad>>() {

        @Override

        public void handleResponse(BackendlessCollection<Actividad> valors) {
            System.out.println( valors.getCurrentPage().toString());

            for( Actividad order : valors.getCurrentPage() )
            {
                System.out.println( order );

                ActivitatsArrayRecibidos.add(order );

            }
            mValorRetorno[0]=true;
            Log.e("Query","ok");
            CargarTabla();

        }

        @Override

        public void handleFault(BackendlessFault backendlessFault) {
            mValorRetorno[0]=false;

        }

    });


    Log.e("Retorno",mValorRetorno[0].toString());
    return mValorRetorno[0];

}
public void CargarTabla()

{
    Log.e("Cargando tabla",Integer.toString(ActivitatsArrayRecibidos.size()));

   Log.e("Cargando desc", ActivitatsArrayRecibidos.get(0).getdesc());

  AdaptadorActividadesLista adt = new AdaptadorActividadesLista(this, ActivitatsArrayRecibidos);
 mListView.setAdapter(adt);
}
public boolean ComprovarCampos()
{
    return true;
}


public void GuardarActividad(){

    if (ComprovarCampos()==true) {
        Log.e("Creant Activitat  ","");
        BackendlessUser user= Backendless.UserService.CurrentUser();
        newActividad = new Actividad();
        newActividad.setactiva(true);
        newActividad.setdesc(mtxtDesc.getText().toString());

        newActividad.setfechafin(ConvertirFecha(mtxDataFin.getText().toString()));
        newActividad.setfechainicio(ConvertirFecha(mtxtDataInicio.getText().toString()));

        newActividad.sethorafin(ConvertirFecha(mtxtHoraFi.getText().toString()));
        newActividad.sethorainicio(ConvertirFecha(mtxtHoraInici.getText().toString()));

        newActividad.setLunes(mcbLunes.isChecked());
        newActividad.setmartes(mcbMartes.isChecked());
        newActividad.setmiercoles(mcbMiercoles.isChecked());
        newActividad.setjueves(mcbJueves.isChecked());
        newActividad.setviernes(mcbViernes.isChecked());
        newActividad.setsabado(mcbSabado.isChecked());
        newActividad.setdomingo(mcbDomingo.isChecked());
        newActividad.setpropietarioId(user.getObjectId());
        Log.e("Objecte creat ","");
        // save object asynchronously
        Backendless.Persistence.save( newActividad, new AsyncCallback<Actividad>() {

            public void handleResponse( Actividad response )
            {
                Log.e("Objecte desat ","");
            }

            public void handleFault( BackendlessFault fault )
            {
                Log.e("Objecte No desat ","");
            }
        });
    }

}

public String ConvertirFecha(String fecha){
    return fecha;
}

2 个答案:

答案 0 :(得分:0)

在XML中,您使用支持库中的按钮(widget.AppCompatButton),但在您的代码中,您尝试将其转换为常规Button。可以在XML代码中使用常规Button,也可以在Java代码中使用AppCompatButton。

看到您正在使用支持库(您正在使用AppCompatActivity),我建议您更改按钮&#39;到AppCompatButton&#39;在您的Java代码中。

答案 1 :(得分:0)

感谢队友。

我解决了。这是一个Backendless错误和日志。我没有填写第二个论点,因为没有出现raason错误。