1
tj
2025-02-27 768f1d38c5357e214e6cff018e57ef7bcb64ee60
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
package com.example.firstapp.ui.notifications
 
import android.content.ClipData
import android.content.ClipboardManager
import android.content.Context
import android.content.Intent
import android.net.Uri
import android.os.Bundle
import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import android.widget.EditText
import android.widget.Toast
import androidx.fragment.app.Fragment
import androidx.navigation.fragment.findNavController
import com.google.android.material.dialog.MaterialAlertDialogBuilder
import com.example.firstapp.R
import com.example.firstapp.databinding.FragmentNotificationsBinding
import com.example.firstapp.ui.reminderOther.ReminderOtherAddActivity2
import com.example.firstapp.ui.reminderOther.ReminderSettingsFragmentOther
 
class NotificationsFragment : Fragment() {
 
    private var _binding: FragmentNotificationsBinding? = null
 
    // This property is only valid between onCreateView and
    // onDestroyView.
    private val binding get() = _binding!!
 
    override fun onCreateView(
        inflater: LayoutInflater,
        container: ViewGroup?,
        savedInstanceState: Bundle?
    ): View {
        _binding = FragmentNotificationsBinding.inflate(inflater, container, false)
 
        setupClickListeners()
 
        return binding.root
    }
 
    private fun setupClickListeners() {
        // 设置提醒
        binding.settingsReminder.setOnClickListener {
            // 跳转到设置提醒页面
            findNavController().navigate(R.id.action_navigation_notifications_to_reminderSettingsFragment)
        }
 
//         设置其他提醒
        binding.settingsReminderOther.setOnClickListener {
            // 跳转到设置提醒页面
            findNavController().navigate(R.id.action_settings_to_reminderSettingsFragmentOther)
        }
 
 
 
        // 关于小红书
        binding.aboutApp.setOnClickListener {
            // 跳转到小红书账号页面
            val intent = Intent(Intent.ACTION_VIEW, Uri.parse("https://www.xiaohongshu.com/user/profile/64978d5c000000001001ee26"))
            startActivity(intent)
        }
 
        // 邮件联系
        binding.emailContact.setOnClickListener {
            showEmailDialog()
        }
 
        // 意见与反馈
        binding.feedback.setOnClickListener {
            showFeedbackDialog()
        }
 
        // 分享给好友
        binding.shareToFriends.setOnClickListener {
            shareToWechat()
        }
    }
 
    private fun showEmailDialog() {
        val email = "support@example.com"
        MaterialAlertDialogBuilder(requireContext())
            .setTitle("联系邮箱")
            .setMessage(email)
            .setPositiveButton("复制") { _, _ ->
                val clipboard = requireContext().getSystemService(Context.CLIPBOARD_SERVICE) as ClipboardManager
                val clip = ClipData.newPlainText("email", email)
                clipboard.setPrimaryClip(clip)
                Toast.makeText(context, "邮箱已复制", Toast.LENGTH_SHORT).show()
            }
            .setNegativeButton("取消", null)
            .show()
    }
 
    private fun showFeedbackDialog() {
        val dialogView = LayoutInflater.from(context).inflate(R.layout.dialog_feedback, null)
        val editText = dialogView.findViewById<EditText>(R.id.feedback_edit_text)
 
        MaterialAlertDialogBuilder(requireContext())
            .setTitle("意见反馈")
            .setView(dialogView)
            .setPositiveButton("提交") { _, _ ->
                val feedback = editText.text.toString()
                if (feedback.isNotEmpty()) {
                    // TODO: 提交反馈到服务器
                    Toast.makeText(context, "感谢您的反馈", Toast.LENGTH_SHORT).show()
                }
            }
            .setNegativeButton("取消", null)
            .show()
    }
 
    private fun shareToWechat() {
        try {
            val intent = Intent()
            intent.setPackage("com.tencent.mm")
            intent.action = Intent.ACTION_SEND
            intent.type = "text/plain"
            intent.putExtra(Intent.EXTRA_TEXT, "推荐一个很棒的应用给你!")
            startActivity(Intent.createChooser(intent, "分享到微信"))
        } catch (e: Exception) {
            Toast.makeText(context, "请先安装微信", Toast.LENGTH_SHORT).show()
        }
    }
 
    override fun onDestroyView() {
        super.onDestroyView()
        _binding = null
    }
}