2012-02-07 23 views
1

中的表中獲取數據時,背景屏幕會變黑並且無法控制我的數據被抓取,並在TextView中顯示它。但問題是,當所示的表格數據的背景屏幕變黑,我們沒有對後援代碼的任何控制低於我使用當我從android

public class high_score extends Activity{ 
SQLiteDatabase mydatabase=null; 
String Data=""; 
String TableName="users"; 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.high_score); 


    // RelativeLayout main=new RelativeLayout(this); 

    RelativeLayout main=(RelativeLayout)findViewById(R.id.main); 
    main.setBackgroundDrawable(this.getResources().getDrawable(R.drawable.highestlevel_menu)); 

    try 
    { 
     mydatabase=this.openOrCreateDatabase("testdata", MODE_PRIVATE, null); 

     Cursor c=mydatabase.rawQuery("SELECT * FROM "+TableName, null); 
     int column1=c.getColumnIndex("name"); 
     int column2=c.getColumnIndex("user_score"); 
     c.moveToFirst(); 
     if(c!=null) 
     { 
      do 
      { 
       String Name=c.getString(column1); 
       int Score=c.getInt(column2); 
       Data=Data+Name+"    "+Score+"\n"; 
       System.out.println("name"+Name+" score"+Score); 
      }while(c.moveToNext()); 
      TextView display_data=new TextView(this); 
      display_data.setText(Data); 
      setContentView(display_data); 
      main.addView(display_data, null); 


     } 

     /*TextView tv=(TextView)findViewById(R.id.tv); 
     tv.setText(Data); 
     setContentView(tv);*/ 

    }catch(Exception ex) 
    { 
     Log.e("ERROR","ERROR" ,ex); 
    } 
    finally 
    { 
     if(mydatabase!=null) 
      mydatabase.close(); 
    } 

    main.setOnClickListener(new OnClickListener() { 

     public void onClick(View v) { 
      Intent start = new Intent(high_score.this,KtriviaActivity.class); 
      startActivity(start); 
      finishActivity(0); 
     } 
    }); 
} 
} 

我的佈局代碼如下

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:orientation="vertical" 

android:id="@+id/main" > 

通過該表中的數據被取出並顯示,但其他的事情不是working.Please幫我在這,我需要儘可能早地完成它。

+0

請問您的佈局'high_score', – WarrenFaith 2012-02-07 09:12:48

+1

<?xml version =「1.0」encoding =「utf-8」?> 2012-02-07 09:16:33

+1

請不要評論,編輯您的問題。並刪除'setContentView(display_data)'。 – WarrenFaith 2012-02-07 09:19:40

回答

2

您的代碼有一些小問題。

  1. 您檢查光標空你叫c.moveToFirst()
  2. 後while循環創建新的對象是一個壞主意(我的意思是名稱和得分)
  3. 你應該確保你的查詢工作,所以在你的TextView中顯示沒有找到結果的情況下做出另一種情況。

基本上你的TextView使用似乎是正確的(只是檢查它的工作原理沒有LayoutParams)。我猜你的數據庫不會返回預期的值。您應該開始調試並檢查程序執行的語句。

你是否看到你的System.out.println

+0

是的,我通過使用System.out.println檢查它,我的數據庫每次都返回數據。這沒有問題。但問題是要顯示textview上的數據和現有背景,當數據出現在頁面上時,terns變黑。如果刪除了setContentView(display_data);那麼背景是好的,但數據不顯示。 – 2012-02-07 10:43:15

+0

調試你的代碼,我不知道你爲什麼看不到你的數據... – WarrenFaith 2012-02-07 10:49:02

+0

沒有問題WarrenFaith。感謝您的關心,並看看我的問題。 – 2012-02-07 10:51:33

相關問題