根据哪个片段可见,更改onClick上发生的事情?

时间:2014-02-21 21:15:05

标签: java android android-fragments onclicklistener

我有一个图片布局,根据图片下方框架中显示的片段,点击时应播放声音。

我所有的片段都在内心阶层。

当我开始活动时,我关闭了一个力量。这是问题......

这段代码出现在我的所有三个片段中,但声音不同,声音为碎片,声音为碎片2,等等......

public class Fragment_gehorINTbeginnerR8 extends Fragment{

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)  {

        if (container == null) {
            return null;
        }

        LinearLayout mLinearLayout = (LinearLayout) inflater.inflate(R.layout.fragment_musikteori_gehortest_int_beg, container, false);

        Button buttonR1 = (Button) mLinearLayout.findViewById(R.id.button_r1);
        Button buttonR5 = (Button) mLinearLayout.findViewById(R.id.button_r5);
        Button buttonR8 = (Button) mLinearLayout.findViewById(R.id.button_r8);


        ImageView imagePlay = (ImageView) findViewById(R.id.imageViewPlayGehorSound);

        if(mp != null && mp.isPlaying()){
            mp.stop();

        }
        mp = MediaPlayer.create(getApplicationContext(), R.raw.inter_oktav);
        mp.start();

        imagePlay.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                if (mp != null && mp.isPlaying()) {
                    mp.stop();
                }
                mp = MediaPlayer.create(getApplicationContext(), R.raw.inter_prim);
                mp.start();
            }
        });



       some buttons....

1 个答案:

答案 0 :(得分:0)

我将其添加到每个片段中:

public void playImageSound(){
            imagePlay.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    if (mp != null && mp.isPlaying()) {
                        mp.stop();
                    }
                    mp = MediaPlayer.create(getApplicationContext(), R.raw.soundx);
                    mp.start();
                }
            });
        }

这就是onCreate中的每个片段:

fragmentx.playImageSound();