Android Fragment按钮的onclick第一次无法正常工作

时间:2013-05-26 23:12:46

标签: android android-fragments

对于我的Android应用中的特定片段,我的onClick如下:

btn_fav = (Button) view.findViewById(R.id.btn_fav);
this.setFavText(btn_fav.getText().toString());

btn_fav.setOnClickListener(new OnClickListener()
{
 public void onClick(View v)
 {
    onClick1();
}});

在onCreateView方法中。

onclick1方法定义如下

public void onClick1() {
        Button favButton = (Button) (getView().findViewById(R.id.btn_fav));
        String buttonText = favButton.getText().toString();
        FavoriteDB.setContext(this.getActivity());

        if(buttonText == FAV)
        {
          FavoriteDB.addSong(this.getSongName());
          favButton.setText(UNFAV);
        }
        else
        {
          FavoriteDB.removeSong(this.getSongName());
        favButton.setText(FAV);
        }
      }

我观察到,第一次创建片段时,默认情况下按钮文本为“收藏夹”。当我点击收藏夹时,我想将文本设置为Unfavorite并希望将歌曲添加到收藏列表中。但是,第一次点击时不会发生这种情况。当我再次点击时,文本变为Unfavorite,并且DB将歌曲添加为收藏。当我再次点击Unfavorite时,文本将更改为收藏夹,并且歌曲将从DB中删除,这是预期的行为。我不明白的是,为什么第一次不起作用?

0 个答案:

没有答案