Java Android Studio-EditText.addTextChangedListener不工作
我有一个应用程序,我已经实现了片段寻呼机适配器,用于使用片段浏览页面。然后,在片段上,它有一个EditText和一个TextView。我想在片段中实现EditText.addTextChangedListener,因此在MainActivity.javaJava Android Studio-EditText.addTextChangedListener不工作,java,android,fragment,addtextchangedlistener,Java,Android,Fragment,Addtextchangedlistener,我有一个应用程序,我已经实现了片段寻呼机适配器,用于使用片段浏览页面。然后,在片段上,它有一个EditText和一个TextView。我想在片段中实现EditText.addTextChangedListener,因此在MainActivity.java package testing.com.testing; import android.os.Bundle; import android.support.v4.app.Fragment; import android.support.v4.
package testing.com.testing;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentPagerAdapter;
import android.support.v4.view.ViewPager;
import android.support.v7.app.AppCompatActivity;
import layout.page1;
import layout.page2;
public class MainActivity extends AppCompatActivity {
ViewPager mViewPager;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mViewPager = (ViewPager) findViewById(R.id.pager);
mViewPager.setAdapter(new SamplePagerAdapter(
getSupportFragmentManager()));
}
public class SamplePagerAdapter extends FragmentPagerAdapter {
public SamplePagerAdapter(FragmentManager fm) {
super(fm);
}
@Override
public Fragment getItem(int position) {
if (position == 0) {
return new page1();
} else
return new page2();
}
@Override
public int getCount() {
return 2;
}
}
}
My fragment.java
package layout;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.text.Editable;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.EditText;
import android.widget.TextView;
import testing.com.testing.R;
public class page1 extends Fragment {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.page1, container,
false);
return rootView;
}
@Override
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
EditText text;
TextView textv;
text = (EditText) getView().findViewById(R.id.p1Name);
textv = (TextView) getView().findViewById(R.id.textView);
text.addTextChangedListener(new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
}
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
}
@Override
public void afterTextChanged(Editable s) {
textv.setText(s);
}
});
}
}
但它不工作,我在TextWatcher上遇到错误,错误:找不到符号类TextWatcher,任务执行失败:AppCompiledBugJavaWithJavaC。有人能帮我吗?假设片段布局中有
R.id.p1Name
和R.id.textView
在onActivityCreated(…)
方法中的片段中,获取对edittext的引用,并在那里设置addTextChangedListener
@Override
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
text = (EditText) getView().findViewById(R.id.p1Name);
textv = (TextView) getView().findViewById(R.id.textView);
text.addTextChangedListener(new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
}
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
}
@Override
public void afterTextChanged(Editable s) {
textv.setText(s);
}
});
}
你好,谢谢你的回复!在我的fragment.java中,我粘贴了代码并添加了EditText文本;TextView textv;但TextWatcher出现错误(无法解析符号“TextWatcher”)否,此显示失败:生成失败,出现异常。*错误:任务执行失败:应用程序:CompiledBugJavaWithJavaC'>编译失败;有关详细信息,请参阅编译器错误输出。*尝试:使用--stacktrace选项运行以获取堆栈跟踪。使用--info或--debug选项运行以获得更多日志输出。构建失败您能否共享片段和活动的完整代码?检查你到底在做什么。