我有三个TextViews,plotText,yearText和directorText。还有一个用于用户输入的EditText。
应该发生什么:当我按下使用提示按钮时,应显示年份。当我再次按下使用提示按钮时,应该出现导演。
现在正在发生什么:当我按下使用提示按钮时,年份显示为应该。当我再次按下按钮时,Director标签会出现,但是DirectorText(导演的名字)出现在EditText字段中,而不是我分配给它的TextView。
我已经检查过我的标签都是正确命名的,并且我正在分配给正确的标签,我已经尝试在Eclipse中清理项目,但这也没有用。有什么想法吗?
我在onCreate中定义了TextView:
TextView yearText = (TextView)findViewById(R.id.yearText);
TextView directorText = (TextView)findViewById(R.id.directorText);
TextView hintText = (TextView)findViewById(R.id.hintText);
TextView plotText = (TextView)findViewById(R.id.plotText);
以下是按钮的代码:
public void useHint(View v){
if (game.numHints == 2){
View y = findViewById(R.id.yearLabel);
y.setVisibility(View.VISIBLE);
yearText.setText(currentMovie.year);
game.numHints--;
hintText.setText("Hints Remaining: "+game.numHints);
}else if (game.numHints == 1){
View d = findViewById(R.id.directorLabel);
d.setVisibility(View.VISIBLE);
directorText.setText(currentMovie.director);
game.numHints--;
hintText.setText("Hints Remaining: "+game.numHints);
// remove button
View b = findViewById(R.id.hintButton);
b.setVisibility(View.INVISIBLE);
}
}
这是XML:
<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: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="Andrea.guessthetitle.ActivityGuessPage" >
<TextView
android:id="@+id/plotLabel"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:text="Plot:"
android:textAppearance="?android:attr/textAppearanceMedium" />
<TextView
android:id="@+id/plotText"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/plotLabel"
android:layout_alignParentRight="true"
android:layout_below="@+id/plotLabel"
android:maxLines="10"
android:minHeight="500px"
android:text="TextView" />
<TextView
android:id="@+id/yearLabel"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/plotText"
android:layout_below="@+id/plotText"
android:text="Year: "
android:textAppearance="?android:attr/textAppearanceMedium"
android:visibility="invisible" />
<TextView
android:id="@+id/yearText"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/yearLabel"
android:layout_alignBottom="@+id/yearLabel"
android:layout_alignParentRight="true"
android:layout_toRightOf="@+id/yearLabel"
android:text="TextView" />
<TextView
android:id="@+id/directorLabel"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/yearLabel"
android:layout_below="@+id/yearLabel"
android:text="Director: "
android:textAppearance="?android:attr/textAppearanceMedium"
android:visibility="invisible" />
<TextView
android:id="@+id/directorText"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_alignBaseline="@+id/directorLabel"
android:layout_alignBottom="@+id/directorLabel"
android:layout_toRightOf="@+id/directorLabel"
android:text="TextView" />
<TextView
android:id="@+id/guessLabel"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/directorLabel"
android:layout_below="@+id/directorLabel"
android:layout_marginTop="48dp"
android:text="Guess:"
android:textAppearance="?android:attr/textAppearanceMedium" />
<EditText
android:id="@+id/guessInput"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_alignBottom="@+id/guessLabel"
android:layout_toRightOf="@+id/guessLabel"
android:ems="10" >
<requestFocus />
</EditText>
<Button
android:id="@+id/guessButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="@+id/endButton"
android:layout_alignLeft="@+id/guessLabel"
android:onClick="submitGuess"
android:text="Guess" />
<Button
android:id="@+id/hintButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/guessButton"
android:layout_alignBottom="@+id/guessButton"
android:layout_alignParentRight="true"
android:onClick="useHint"
android:text="Use Hint" />
<TextView
android:id="@+id/hintText"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_below="@+id/hintButton"
android:text="Hints Remaining: 2" />
<Button
android:id="@+id/endButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentLeft="true"
android:onClick="endGame"
android:text="End Game" />
</RelativeLayout>
这是一个截图(文本字段中没有输入任何内容,当我单击提示按钮时,该文本出现在那里,现在已经消失了,因为它应该这样做):
答案 0 :(得分:0)
原来是一个愚蠢的问题,因为这只是一个简单的错误。我会留下它,万一其他人可能碰到它。我不可能是唯一犯这样小错误的人(希望如此!)。
问题是,我运行了Source - &gt;清理而不是项目 - &gt;清洁。运行正确的清洁工作就可以了。感谢@Eugen Pechanec。