0
我希望哟通过单击它来隐藏片段XML中的按钮,因为它总是会被隐藏,直到卸载应用程序为止,通过共享首选项。但是我收到错误,“android.widget.button的未知方法setVisibility”和“btnsearch变量必须是本地类中最终使用的”。这里是我的代码:在片段中隐藏一个按钮,以便始终使用共享首选项
package com.niezwm.bododictionary.fragments;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.widget.Toast;
import android.view.ViewGroup;
import android.widget.Button;
import android.content.Context;
import android.content.SharedPreferences;
import com.niezwm.bododictionary.R;
public class SearchFragment extends Fragment{
SharedPreferences sharedPreferences;
Button btnsearch;
public SearchFragment() {
// Required empty public constructor
}
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
}
@Override
public View onCreateView(LayoutInflater inflater,ViewGroup container,Bundle savedInstanceState){
View rootView = inflater.inflate(R.layout.fragment_search, container,false);
Button btnsearch =(Button) rootView.findViewById(R.id.btnsearch);
SharedPreferences sharedPreferences =this.getActivity().getSharedPreferences("pref",0);
btnsearch.setVisiblity(sharedPreferences.getBoolean("visiblity",false));
btnsearch.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View view){
if(
btnsearch.getVisibility()==View.INVISIBLE){
btnsearch.setVisibility(View.VISIBLE);
SharedPreferences.Editor editor = sharedPreferences.edit();
editor.putBoolean("visiblity",true)
.commit();
}
Toast.makeText(getActivity(), "search", Toast.LENGTH_LONG).show();
}
// end onClick
});
return rootView;
}
// end onCreateView
}
setVisibility也会出错 – Niezwm
setVisibility需要一个int作为输入,而不是布尔值。您根据您从sharedPreferences获取的布尔值设置可见性。 –
您可以编辑我的代码添加您的更正,谢谢。 – Niezwm