2011-07-04 11 views
-1

何もLogCatで示したので、私は、エラーのないideiaを持っていない、主人公は全体のコードを行く:エラー呼び出し活動

package com.ibssistemas.pda; 

import android.app.Activity; 
import android.database.Cursor; 
import android.database.sqlite.SQLiteDatabase; 
import android.os.Bundle; 
import android.widget.ListView; 
import android.widget.SimpleCursorAdapter; 
import android.widget.Toast; 

import com.ibssistemas.pda.database.dbHelper; 

public class BuscaCliente extends Activity { 
ListView lista; 
public void AtualizaLista(String nome) { 
    dbHelper DB = new dbHelper(BuscaCliente.this); 
    SQLiteDatabase dB = DB.getReadableDatabase(); 
    if (nome == null) { 
     Cursor c = dB.query("Cliente", (new String[]{"cdCliente", "nmCliente", "cdCPFCNPJ"}), null, null, null, null, "cdCliente"); 
     if (c.getCount()==0) { 
      Toast.makeText(BuscaCliente.this, "Nenhum cliente encontrado!", 10).show(); 
      return; 
     } 
     c.moveToFirst(); 
     String[] from = {"cdCliente", "nmCliente", "cdCPFCNPJ"}; 
     int[] to = {R.id.cdCliente,R.id.nmCliente, R.id.CPFCliente}; 
     SimpleCursorAdapter adapter = new SimpleCursorAdapter(BuscaCliente.this, R.layout.layoutbuscacliente, c, from, to); 
     lista.setAdapter(adapter); 
     dB.close(); 
     return; 
    } 
    nome = nome.toUpperCase(); 
    Cursor c = dB.query("Cliente", (new String[]{"cdCliente", "nmCliente", "cdCPFCNPJ"}), "nmCliente LIKE \"%"+nome+"%\"", null, null, null, "cdCliente"); 
    if (c.getCount()==0) { 
     Toast.makeText(BuscaCliente.this, "Nenhum cliente encontrado!", 10).show(); 
     return; 
    } 
    c.moveToFirst(); 
    String[] from = {"cdCliente", "nmCliente", "cdCPFCNPJ"}; 
    int[] to = {R.id.cdCliente,R.id.nmCliente, R.id.CPFCliente}; 
    SimpleCursorAdapter adapter = new SimpleCursorAdapter(BuscaCliente.this, R.layout.layoutbuscacliente, c, from, to); 
    lista.setAdapter(adapter); 
    dB.close(); 
    return; 
} 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.buscacliente); 
    lista = (ListView)findViewById(R.id.listaBuscaCliente); 
    AtualizaLista(null); 

} 

} 
+0

ログカット出力がない場合(見つけた場合)、何が問題になるかは言うまでもありません。デバッガをシングルステップ実行して問題のラインを特定し、質問を更新することをお勧めします。 – RivieraKid

答えて

0

コメントのほとんどに同意しますが、私が見るように、あなたは== nullの... あなたのエラーがここでなければなりませんノームを呼び出します。あなたがに接続することはできませんと思われる何らかの理由で

dbHelper DB = new dbHelper(BuscaCliente.this); 
SQLiteDatabase dB = DB.getReadableDatabase(); 

他のコードが明確であるためです。 try/catchブロックを追加して、例外の詳細を記録してみてください。

0

あなたがノームのインスタンスをどこで見ることができません。したがって、あなたは、このライン上のNPEエラーになるだろう:

nome = nome.toUpperCase(); 

あなたLogCatはので、多分何か他のものが最初に間違って行っている、このかかわらを表示する必要があります。あなたは本当にコードをステップバイステップでデバッグし、それを解決する必要があります。

+0

nomeはAtualizaListaの引数であり、nome == nullの場合はnome.toUpperが呼び出されません。 – RivieraKid

+0

nomeがnullとして渡されます。ああ、彼はifを返す、elseとしてもっときれいになるだろう。 – Blundell

+0

私はそれがより明確になることに同意し、状況の下では、おそらく2つのオーバーロードされたバージョンを持っています - 一つはString引数、もう一つはvoid引数です。 – RivieraKid

0

私は他の人に同意します。このような問題が発生すると、私はしばしばLog.d()ステートメントをコードに挿入します。それから、最後に何が起きるのかを見ます。しかし、デバッガのステップメソッドはあなたの方が簡単かもしれません。 logcatの出力がないので、そのアクティビティがエラーになっていることをどのように知っていますか?アプリは何をしていますか?

+0

私は画面を開こうとすると、アプリケーションがちょうどクラッシュします。 – JLFerrari

+0

JL申し訳ありませんが、あなたのコメントはここで忘れました。それが開いているときにクラッシュする場合は、あなたのlogcatにエラーがあるはずです。そうでない場合は、デバッガを使用して、コードが消滅した場所を突き止めることを推奨します。ブレークポイントを最初に設定して一時停止させたい場合があります。 –

関連する問題