Criei 3 activitys e nao consigo rodar a primeira, a msg q aparece no log é a seguinte:
ComponentInfo{br.com.caelum.cadastro/br.com.caelum.cadastro.ListaAlunosActivity}: java.lang.UnsupportedOperationException: addView(View, LayoutParams) is not supported in AdapterView
Meu código:
public class ListaAlunosActivity extends AppCompatActivity {
private ListView listaAlunos;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_lista_alunos);
String [] alunos = {"Anderson","Filipe","Guilherme"};
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, alunos);
final ListView listaAlunos = (ListView)findViewById(R.id.lista_alunos);
listaAlunos.setAdapter(adapter);
listaAlunos.setOnItemClickListener(new AdapterView.OnItemClickListener() {
public void onItemClick(AdapterView<?> adapter, View view, int posicao, long id) {
Toast.makeText(ListaAlunosActivity.this, "Posição Selecionada: " + posicao, Toast.LENGTH_LONG).show();
listaAlunos.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() {
public boolean onItemLongClick(AdapterView<?> adapter, View view, int posicao, long id) {
String aluno = (String) adapter.getItemAtPosition(posicao);
Toast.makeText(ListaAlunosActivity.this, "Clique Longo: " + adapter.getItemAtPosition(posicao), Toast.LENGTH_LONG).show();
return false;
}
});
}
});
Button botaoAdiciona = (Button)findViewById(R.id.lista_alunos_floating_button);
botaoAdiciona.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(ListaAlunosActivity.this,"Floating button clicado", Toast.LENGTH_LONG).show();
}
});
}
}
Se alguém puder me ajudar, grato.
Oi Ricardo, tudo bem ?
Posta o seu layout para gente ver por gentileza, o arquivo activity_lista_alunos.xml !
Obrigado Matheus pelo interesse, valeu, segue o código.
<RelativeLayout xmlns:android=“http://schemas.android.com/apk/res/android”
android:layout_width="match_parent"
android:layout_height="match_parent">
<ListView
android:id="@+id/lista_alunos"
android:layout_width="match_parent"
android:layout_height="match_parent">
<Button
android:id="@+id/lista_alunos_floating_button"
android:layout_width="56dp"
android:layout_height="56dp"
android:layout_alignParentBottom="true"
android:layout_alignParentRight="true"
android:layout_marginBottom="16dp"
android:layout_marginRight="16dp"
android:background="@drawable/fundo"
android:elevation="6dp"
android:paddingBottom="16dp"
android:text=" + "
android:textColor="#FFFFFF"
android:textSize="40sp"/>
</ListView>
Ricardo, tudo bem ?
Dei uma olhadinha aqui cara. Tem um pequeno probleminha, que é bem comum.
No android cada tela, pode possuir apenas uma view, aparentemente você deve possuir, pois veio esse código perdido :
android:layout_width="match_parent"
android:layout_height=“match_parent”>
Imagino que seja um RelativeLayout, o que fará que seu layout consiga colocar uma view sobre a outra.
Depois você está fazendo isso :
< ListView
android:id="@+id/lista_alunos"
android:layout_width="match_parent"
android:layout_height=“match_parent”>
<Button
android:id="@+id/lista_alunos_floating_button"
android:layout_width="56dp"
android:layout_height="56dp"
android:layout_alignParentBottom="true"
android:layout_alignParentRight="true"
android:layout_marginBottom="16dp"
android:layout_marginRight="16dp"
android:background="@drawable/fundo"
android:elevation="6dp"
android:paddingBottom="16dp"
android:text=" + "
android:textColor="#FFFFFF"
android:textSize="40sp"/>
< /ListView>
Nesse caso você está falando que o listview é um container, sendo que ele é apenas uma view.
Quando o Android vai criar esse xml ele quebra, dando essa exception.
Para resolver, remova o button de dentro do list view :
< ListView
android:id="@+id/lista_alunos"
android:layout_width="match_parent"
android:layout_height="match_parent" />
< Button
android:id="@+id/lista_alunos_floating_button"
android:layout_width="56dp"
android:layout_height="56dp"
android:layout_alignParentBottom="true"
android:layout_alignParentRight="true"
android:layout_marginBottom="16dp"
android:layout_marginRight=“16dp"
android:background=”@drawable/fundo"
android:elevation="6dp"
android:paddingBottom=“16dp"
android:text=” + “
android:textColor=”#FFFFFF"
android:textSize=“40sp”/>
Isso já deve resolver o seu problema !
Espero ter ajudado !
Abraços
Obrigado matheus vou tentar valeu!!
Deu certo é isso mesmo, vc é o CARA, obrigado!!!
Às ordens !
O que precisar chama ai !
Fecha esse tópico depois, por gentileza