选项卡式活动中的Android声音

时间:2017-07-10 13:13:24

标签: java android audio tabs android-tablayout

我有一个包含6个标签的应用。我遵循了本教程:Reading。 选项卡XML文件包含滚动视图和一些按钮。

按下时我需要制作一些按钮来发出声音。我似乎无法使用onClickListener,我也无法创建一个可以从XML文件调用的函数。谁能告诉我这里要放什么:

<div class="settings-opslag">
        <p>‹</p>
</div>
<script>
     document.getElementByClassName("settings-opslag").addEventListener("click",function(){
        document.getElementByClassName("settings-opslag").style.background = "red";
     });
</script>

2 个答案:

答案 0 :(得分:0)

试试这个

        tabLayout.addOnTabSelectedListener(new TabLayout.OnTabSelectedListener() {
        @Override
        public void onTabSelected(TabLayout.Tab tab) {
            Vibrator vibe = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE);
            vibe.vibrate(100);

         // add your sound here
        }

        @Override
        public void onTabUnselected(TabLayout.Tab tab) {

        }

        @Override
        public void onTabReselected(TabLayout.Tab tab) {

        }
    });

答案 1 :(得分:0)

尝试使用以下代码将点击侦听器添加到片段中的按钮并播放声音文件。

    MediaPlayer mediaPlayer;

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
                             Bundle savedInstanceState) {
        View view = inflater.inflate(R.layout.tab4makesounds, container, false);
        Button btnOne = (Button) view.findViewById(R.id.YourButtonId);

       btnOne.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {

                  if(mediaPlayer != null) {
                     mediaPlayer.stop();
                     mediaPlayer.release();
                     mediaPlayer = null;
                  }

                  mediaPlayer = MediaPlayer.create(getActivity(), R.raw.your_sound);
                  mediaPlayer.start();
            }
        });
        return view;
    }
}

我假设您的声音文件位于res / raw /文件夹