我有在關鍵聽衆,而如果我使用的是textwatcher來實現我的EditText某些功能我已經在這裏完全解釋Unable to get line number on press of ENTER如何檢測不輸入使用OnkeyListner
現在的一個問題壓,我當我的光標移動到下一行時,每次都需要行號。我想,當按下回車鍵就知道了,我怎麼能做到這一點
這裏是textwatcher
scene.addTextChangedListener(new TextWatcher() {
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
//here is your code
strcheck = s.toString().substring((s.length()-1),s.length());
if (nowUpper)
strcheck = strcheck.toUpperCase();
else if (nowLower)
strcheck = strcheck.toLowerCase();
}
@Override
public void beforeTextChanged(CharSequence s, int start, int count,
int after) {
// TODO Auto-generated method stub
}
@Override
public void afterTextChanged(Editable s) {
if (nowUpper){
if(ix==1)
{
if(strcheck=="\n")
strcheck="a";
Log.v(strcheck, strcheck);
ix=0;
scene.setText(scene.getText().toString().substring(0,scene.length()-1) + strcheck);
scene.setSelection(scene.getText().length());
}
else
{
ix=1;
}
// TODO Auto-generated method stub
}
}
});
您的解決方案不是找到「OnKeyListener」的替代方案。你需要弄清楚爲什麼你得到一個NPE。請注意,logcat完全告訴你什麼是null,你只需要弄清楚爲什麼你認爲它不是。 – keyser