【发布时间】:2013-09-19 12:02:30
【问题描述】:
片段中的 onClicklistener 有一些问题。如果我点击按钮,什么都不会发生。我既没有收到来自 Logcat 中的 onClicklistener 的消息,也没有在屏幕上出现 Toast,但我在代码中找不到错误。有什么想法吗?
如果有任何帮助,我将不胜感激!非常感谢!对不起我的英语不好
import android.app.Fragment;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.EditText;
import android.widget.Button;
import android.widget.Toast;
import android.util.Log;
public class InputFragment extends Fragment
{
EditText input_text;
String text;
Button translate_button;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
{
View InputFragmentView = inflater.inflate(R.layout.input_fgmt, container, false);
input_text = (EditText) InputFragmentView.findViewById(R.id.input_field);
translate_button = (Button) InputFragmentView.findViewById(R.id.translate);
translate_button.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View view)
{
Log.d("Test", "onClickListener ist gestartet");
Toast.makeText(getActivity().getApplicationContext(), "Test", Toast.LENGTH_LONG).show();
saveInString();
}
});
return inflater.inflate(R.layout.input_fgmt, container, false);
}
public void saveInString()
{
if(text.equals(null))
{
Toast.makeText(getActivity().getApplicationContext(), "Das Feld ist leer!", Toast.LENGTH_SHORT).show();
}
else
{
Toast.makeText(getActivity().getApplicationContext(), "Speichern...", Toast.LENGTH_LONG).show();
text = input_text.getText().toString();
Toast.makeText(getActivity().getApplicationContext(), "Fertig", Toast.LENGTH_SHORT).show();
}
}
}
【问题讨论】:
-
尝试返回
InputFragmentView而不是inflater.inflate(R.layout.input_fgmt, container, false); -
Java 变量名称约定以小写开头,使用 inputFragmentView 而不是 'InputFragmentView'。
标签: android android-fragments onclicklistener