Pourquoi est-setText() ne fonctionne pas dans le code suivant sur le TextView?

//All required Imports
public class PuzzleActivity extends  Activity implements OnClickListener{
private PuzzlerDB db; 
private Puzzle puz; 
private int puzId=1;     
private String puzAns="";
private int score=0;
private TextView tvPuzContent;
private EditText etPuzAns;
private Button btnCheck;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
final boolean customTitleSupported = requestWindowFeature(Window.FEATURE_CUSTOM_TITLE); 
setContentView(R.layout.activity_puzzle);
if ( customTitleSupported ) {
getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.custom_title);
}
db = new PuzzlerDB(this);
puz = db.getPuzzle(puzId); 
puzAns = puz.getAnswer(); 
tvPuzContent = (TextView) findViewById(R.id.tv_puz_content);
tvPuzContent.setText(puz.getContent());
btnCheck = (Button) findViewById(R.id.btn_check);
btnCheck.setOnClickListener(this);   
android.util.Log.v("IN SIDE ACTIVITY: ", "id: "+ puzId + " answer: "+puz.getAnswer());
}
@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.btn_check:
checkAndNotify(puzAns);
break;
}       
}
private void checkAndNotify(String puzAns)
{
String ans = ((EditText)findViewById(R.id.te_puz_ans)).getText().toString();
if(ans.trim().equalsIgnoreCase(puzAns.trim()))
{
//show pop-up dialog for right answer
new AlertDialog.Builder(this).setTitle("The Puzzler:")
.setMessage("Wow! Right Answer!!")
.setNeutralButton("Continue", new DialogInterface.OnClickListener()
{
public void onClick(DialogInterface dlg, int sumthin) 
{  
android.util.Log.v("IN SIDE function:", " onClick of Dialog");
update();
}
}).show();
}else{
new AlertDialog.Builder(this).setTitle("The Puzzler:")
.setMessage("Sorry! You have to rethink!!")
.setNeutralButton("Continue", new DialogInterface.OnClickListener()
{
public void onClick(DialogInterface dlg, int sumthin) 
{
//do nothing – it will close on its own
}
}).show();          
}
}
protected void update() {
score = score + 10;
++puzId;                    
}
@Override
protected void onResume() {
super.onResume();
setContentView(R.layout.activity_puzzle);
puz = db.getPuzzle(puzId);
if(puz != null)
{
tvPuzContent.setText(puz.getContent());
android.util.Log.v("IN SIDE onResume:", " Content: "+ puz.getContent());
puzAns = puz.getAnswer();           
}
}
@Override
protected void onDestroy() {
super.onDestroy();
db.close();
}
}

De l'activité, la disposition est comme suit:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/bgimg"
android:layout_gravity="center">
<TableLayout android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_gravity="center"
android:layout_margin="20dp"
android:stretchColumns="*">
<TableRow>      
<TextView android:id="@+id/tv_puz_content"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_span="3"
android:typeface="serif"
android:textStyle="bold"
android:textSize="20sp"
android:text="" />
</TableRow>
<TableRow>          
<EditText android:id="@+id/te_puz_ans"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:layout_span="3"             
android:hint="Answer"  />
</TableRow>
<TableRow android:gravity="center">         
<Button android:id="@+id/btn_check"
android:layout_width="60dp"
android:layout_height="wrap_content"
android:hint="Check"  />
<Button android:id="@+id/btn_skip"
android:layout_width="60dp"
android:layout_height="wrap_content"
android:hint="Skip"  />
<Button android:id="@+id/btn_hint"
android:layout_width="60dp"
android:layout_height="wrap_content"
android:hint="Hint"  />
</TableRow>
</TableLayout>
</LinearLayout>

La db de la requête est de retour correctement le contenu qui je peux vérifier par le biais de logcat. Mais l'affichage de texte ne s'affiche pas.L'EditText et les boutons sont affichés.

J'ai essayé diverses options à partir d'autres postes, comme (i )la prise de TextView statique (ii) de recevoir le Contenu de puzzle dans une chaîne de caractères, puis la configuration à travers setText() et d'autres choses, sans succès. Pourriez-vous pls, proposer une solution pour ce.

avez-vous quelque chose dans puz var?
que faites-vous dans ce journal? android.util.Journal.v("À CÔTÉ onResume:", " Contenu: "+ puz.getContent());
Oui. puz est d'avoir tous ses membres de données de valeur de l'ensemble. Et j'obtiens le contenu du puzzle dans le journal ci-dessus: "01-23 22:28:17.937: V/À CÔTÉ onResume:(18673): Contenu: Quelle est la valeur de 2 x 5?'
Est puz.getContent() de type chaîne de caractères? Peut-être que vous appelez une autre surcharge de TextView setText() puis setText(CharSequence texte)...

OriginalL'auteur Dexter | 2014-01-23