我有7个复选框一周的每一天声明如下:的Java:设置通过函数的一个参数多个变量
CheckView MondayTextBox;
CheckView TuesdayTextBox;
CheckView WednesdayTextBox;
...
然后在OnCreate中,他们都是这样初始化:
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
View view = inflater.inflate(R.layout.fragment_add_alarm, container, false);
MondayTextBox = (CheckView) view.findViewById(R.id.mondayButton);
TuesdayTextBox = (CheckView) view.findViewById(R.id.tuesdayButton);
WednesdayTextBox = (CheckView) view.findViewById(R.id.wednesdayButton);
...
在onclick侦听每个这些复选框的予设置被点击复选框的α与动画为灰色出指示其不使用这样的:
MondayTextBox.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
selectAndAnimateTheCheckBoxes(mondaySelected, MondayTextBox);
}
});
TuesdayTextBox.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
selectAndAnimateTheCheckBoxes(tuesdaySelected, TuesdayTextBox);
}
});
...
其中要求selectAndAnimateTheCheckBoxes功能:
public void selectAndAnimateTheCheckBoxes(Boolean daySelected, CheckView dayTextBox) {
if (!daySelected) {
daySelected = true;
dayTextBox.animate().alpha(1F).setDuration(300);
} else {
daySelected = false;
dayTextBox.animate().alpha(0.3F).setDuration(300);
}
}
是否有可能通过不只是一个变量的值,但变量本身通过函数?或者变量是否必须由函数的参数明确声明和设置。
P.s.我知道如何使这个功能起作用,我从来没有想过它,我想知道是否有可能。
在此先感谢您的帮助。
好的,谢谢,所以没有实际的方式做到这一点,然后只是为每个案件。谢谢 –