Android 单击文本视图后禁用单击
我有一个Android 单击文本视图后禁用单击,android,android-layout,android-linearlayout,textview,onclicklistener,Android,Android Layout,Android Linearlayout,Textview,Onclicklistener,我有一个TextView,我在这个TextView上放了一个OnClickListener。我使用此操作将自定义视图加载到线性布局 但是,当我两次单击此TextView时,自定义视图会在线性布局上重复。在将新自定义视图加载到此LinearLaout之前,我清除了此LinearLaout上的所有自定义视图 这是我在TextView上的OnClickListener TextView rejectedTitleTextView = (TextView) findViewById(R.id.roste
TextView
,我在这个TextView
上放了一个OnClickListener
。我使用此操作将自定义视图加载到线性布局
但是,当我两次单击此TextView
时,自定义视图会在线性布局上重复。在将新自定义视图加载到此LinearLaout
之前,我清除了此LinearLaout
上的所有自定义视图
这是我在TextView
上的OnClickListener
TextView rejectedTitleTextView = (TextView) findViewById(R.id.roster_menu_rejected_title);
rejectedTitleTextView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
rejectedTitleTextView.setBackgroundColor(getResources().getColor(R.color.acceptedPurpleColour));
newTitleTextView.setBackgroundColor(getResources().getColor(R.color.defaultBlack));
acceptedTitleTextView.setBackgroundColor(getResources().getColor(R.color.defaultBlack));
locationLinearLayout.removeAllViews();
rosterBottomLayout.setVisibility(View.GONE);
Log.d("CHECK_ACTION"," REJECTED_TEXT_VIEW ");
InternetConnectivity internetConnectivity = new InternetConnectivity();
final boolean isConnectedToInternet = internetConnectivity.isConnectedToInternet(context);
if(isConnectedToInternet==true) {
try {
Thread.sleep(1300);
} catch (Exception e) {
e.printStackTrace();
}
getDataFromServer("REJECTED");
}else{
Snackbar.make(mainView, "No Internet Connection", Snackbar.LENGTH_LONG)
.setAction("Action", null).show();
}
}
});
getDataFromServer(“已拒绝”)强>
是我用来将自定义视图加载到此LinearLayout
上的方法
我如何防止这个问题
有什么想法吗?在setOnclickListener
内尝试以下代码:-
textView.setClickable(false);
您可以像这样维护布尔值
boolean isClick=false;
rejectedTitleTextView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if(!isClick)
{
//do your Stuff on onCLick
isClick=true;
}else
{
//leave it blank if you do not want to do anything second time
}
}
});
试试这个
rejectedTitleTextView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
mSpinner.setEnabled(false);
mSpinner.postDelayed(new Runnable() { @Override public
void run() {
mSpinner.setEnabled(true); }
}
// do your stuff here
});
内放
rejectedTitleTextView.setClickable(false);
一旦你完成了你的功能,让它成为真实的,因为你需要点击下一次
rejectedTitleTextView.setClickable(true);
尝试使用布尔值。