我想用我的应用程序中的字母。字母出现按钮消失
我试着用TextViews和按钮的一切。我使用了GridView和GridLayout,但没有奏效。我可以让按钮消失,按钮的文字出现。我的主要问题是,当我点击“a”字母时,它会出现在第二个框中,因为有正确的位置。但它会出现在第一个框中。所以我不能让字母出现顺序,因为我点击。如果有人有一个想法如何做,请回应。
这里是我的代码:
int fillFactor = -1;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final String word = "SAMSUNG";
final LinearLayout linear = (LinearLayout)findViewById(R.id.linear);
for(int i=0;i<word.length();i++){
Button b = new Button(this);
b.setTag(word.charAt(i));
b.setLayoutParams(new LinearLayout.LayoutParams(48,48));
linear.addView(b);
}
for(int j=0;j<word.length();j++){
Button bn = new Button(this);
bn.setTag(word.charAt(j));
bn.setLayoutParams(new LinearLayout.LayoutParams(48,48));
linear.addView(bn);
bn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
if(fillFactor < word.length())
fillFactor++;
Button view = null;
Button clickedview = view;
//find a correct button
Button leftButton = ((Button)linear.getChildAt(fillFactor));
if((boolean)leftButton.getTag().equals((String)clickedview.getTag()));
leftButton.setText((CharSequence) clickedview.getTag());
if(checkComplete()) moveToNextWordActivity();
else {
Toast.makeText(MainActivity.this, "Invalid character", Toast.LENGTH_LONG).show();
fillFactor--;
}
}
private boolean checkComplete() {
return fillFactor == word.length() - 1;
}
private void moveToNextWordActivity() {
}
});
}
}}
非常感谢您的回答。我试过了,我认为这是工作,但现在我有一个代码问题。我使用按钮而不是ImageButtons。我有在屏幕顶部没有文字的按钮,我有下面的文本按钮。我必须使与按钮对具有变量的数组,我必须与变量和按钮配对。 –
对将在最后。在检查完所有按钮填满后,检查所创建的文本是否是您需要的单词。我会编辑我的答案,以解释 – Amirag
如果你不明白的东西,只是问:) – Amirag