mirror of
https://github.com/pppscn/SmsForwarder
synced 2025-08-18 08:47:42 +08:00
601 lines
25 KiB
XML
601 lines
25 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
|
xmlns:app="http://schemas.android.com/apk/res-auto"
|
|
xmlns:tools="http://schemas.android.com/tools"
|
|
android:layout_width="match_parent"
|
|
android:layout_height="match_parent"
|
|
android:background="?attr/xui_config_color_background"
|
|
android:orientation="vertical">
|
|
|
|
<androidx.core.widget.NestedScrollView
|
|
android:layout_width="match_parent"
|
|
android:layout_height="0dp"
|
|
android:layout_weight="1"
|
|
android:overScrollMode="never">
|
|
|
|
<LinearLayout
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:layout_margin="5dp"
|
|
android:orientation="vertical">
|
|
|
|
<LinearLayout
|
|
style="@style/ruleBarStyle"
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:orientation="vertical">
|
|
|
|
<LinearLayout
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:gravity="center_vertical"
|
|
android:orientation="horizontal"
|
|
android:paddingBottom="5dp">
|
|
|
|
<TextView
|
|
android:layout_width="wrap_content"
|
|
android:layout_height="wrap_content"
|
|
android:text="@string/select_sender"
|
|
android:textStyle="bold" />
|
|
|
|
<com.xuexiang.xui.widget.spinner.editspinner.EditSpinner
|
|
android:id="@+id/sp_sender"
|
|
android:layout_width="0dp"
|
|
android:layout_height="wrap_content"
|
|
android:layout_marginStart="5dp"
|
|
android:layout_weight="1"
|
|
app:es_hint="@string/choose_sender"
|
|
app:es_maxLength="20"
|
|
app:es_maxLine="1" />
|
|
|
|
</LinearLayout>
|
|
|
|
<LinearLayout
|
|
android:id="@+id/layout_Senders"
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:orientation="vertical" />
|
|
|
|
<LinearLayout
|
|
android:id="@+id/layout_sender_logic"
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:orientation="vertical"
|
|
android:visibility="gone">
|
|
|
|
<View
|
|
android:layout_width="match_parent"
|
|
android:layout_height="1dp"
|
|
android:background="?attr/xui_config_color_separator_light" />
|
|
|
|
<LinearLayout
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:gravity="center_vertical"
|
|
android:orientation="horizontal">
|
|
|
|
<TextView
|
|
android:layout_width="wrap_content"
|
|
android:layout_height="wrap_content"
|
|
android:text="@string/sender_logic"
|
|
android:textStyle="bold" />
|
|
|
|
<RadioGroup
|
|
android:id="@+id/rg_sender_logic"
|
|
style="@style/rg_style"
|
|
android:layout_marginStart="5dp"
|
|
android:orientation="horizontal">
|
|
|
|
<RadioButton
|
|
android:id="@+id/rb_sender_logic_all"
|
|
style="@style/rg_rb_style"
|
|
android:checked="true"
|
|
android:text="@string/sender_logic_all" />
|
|
|
|
<RadioButton
|
|
android:id="@+id/rb_sender_logic_until_fail"
|
|
style="@style/rg_rb_style"
|
|
android:text="@string/sender_logic_until_fail" />
|
|
|
|
<RadioButton
|
|
android:id="@+id/rb_sender_logic_until_success"
|
|
style="@style/rg_rb_style"
|
|
android:text="@string/sender_logic_until_success" />
|
|
|
|
</RadioGroup>
|
|
|
|
</LinearLayout>
|
|
|
|
</LinearLayout>
|
|
|
|
</LinearLayout>
|
|
|
|
<LinearLayout
|
|
android:id="@+id/layout_sim_slot"
|
|
style="@style/ruleBarStyle"
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:orientation="vertical">
|
|
|
|
<TextView
|
|
android:layout_width="wrap_content"
|
|
android:layout_height="wrap_content"
|
|
android:layout_marginStart="5dp"
|
|
android:text="@string/match_sim_slot"
|
|
android:textStyle="bold" />
|
|
|
|
<RadioGroup
|
|
android:id="@+id/rg_sim_slot"
|
|
style="@style/rg_style"
|
|
android:orientation="horizontal">
|
|
|
|
<RadioButton
|
|
android:id="@+id/rb_sim_slot_all"
|
|
style="@style/rg_rb_style"
|
|
android:checked="true"
|
|
android:text="@string/all" />
|
|
|
|
<RadioButton
|
|
android:id="@+id/rb_sim_slot_1"
|
|
style="@style/rg_rb_style"
|
|
android:text="@string/sim1" />
|
|
|
|
<RadioButton
|
|
android:id="@+id/rb_sim_slot_2"
|
|
style="@style/rg_rb_style"
|
|
android:text="@string/sim2" />
|
|
|
|
</RadioGroup>
|
|
|
|
</LinearLayout>
|
|
|
|
<LinearLayout
|
|
style="@style/ruleBarStyleWithSwitch"
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:orientation="vertical">
|
|
|
|
<TextView
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:layout_marginStart="5dp"
|
|
android:text="@string/match_field"
|
|
android:textStyle="bold" />
|
|
|
|
<RadioGroup
|
|
android:id="@+id/rg_filed"
|
|
style="@style/rg_style"
|
|
android:orientation="horizontal">
|
|
|
|
<RadioButton
|
|
android:id="@+id/rb_transpond_all"
|
|
style="@style/rg_rb_style_wrap"
|
|
android:checked="true"
|
|
android:text="@string/all" />
|
|
|
|
<RadioButton
|
|
android:id="@+id/rb_phone"
|
|
style="@style/rg_rb_style_wrap"
|
|
android:text="@string/phone_number" />
|
|
|
|
<RadioButton
|
|
android:id="@+id/rb_call_type"
|
|
style="@style/rg_rb_style_wrap"
|
|
android:text="@string/call_type" />
|
|
|
|
<RadioButton
|
|
android:id="@+id/rb_content"
|
|
style="@style/rg_rb_style_wrap"
|
|
android:text="@string/sms_content" />
|
|
|
|
<RadioButton
|
|
android:id="@+id/rb_package_name"
|
|
style="@style/rg_rb_style_wrap"
|
|
android:text="@string/package_name" />
|
|
|
|
<RadioButton
|
|
android:id="@+id/rb_uid"
|
|
style="@style/rg_rb_style_wrap"
|
|
android:text="@string/uid" />
|
|
|
|
<RadioButton
|
|
android:id="@+id/rb_inform_content"
|
|
style="@style/rg_rb_style_wrap"
|
|
android:text="@string/inform_content" />
|
|
|
|
<RadioButton
|
|
android:id="@+id/rb_multi_match"
|
|
style="@style/rg_rb_style_wrap"
|
|
android:text="@string/multiple_matches" />
|
|
|
|
</RadioGroup>
|
|
|
|
</LinearLayout>
|
|
|
|
<LinearLayout
|
|
android:id="@+id/layout_match_type"
|
|
style="@style/ruleBarStyle"
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:orientation="vertical"
|
|
android:visibility="gone">
|
|
|
|
<TextView
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:layout_marginStart="5dp"
|
|
android:text="@string/match_type"
|
|
android:textStyle="bold" />
|
|
|
|
<RadioGroup
|
|
android:id="@+id/rg_check"
|
|
style="@style/rg_style"
|
|
android:orientation="horizontal">
|
|
|
|
<RadioButton
|
|
android:id="@+id/rb_is"
|
|
style="@style/rg_rb_style"
|
|
android:checked="true"
|
|
android:text="@string/btn_is" />
|
|
|
|
<RadioButton
|
|
android:id="@+id/rb_contain"
|
|
style="@style/rg_rb_style"
|
|
android:text="@string/btn_contain" />
|
|
|
|
<RadioButton
|
|
android:id="@+id/rb_not_contain"
|
|
style="@style/rg_rb_style"
|
|
android:text="@string/btn_not_contain" />
|
|
</RadioGroup>
|
|
|
|
<RadioGroup
|
|
android:id="@+id/rg_check2"
|
|
style="@style/rg_style"
|
|
android:orientation="horizontal">
|
|
|
|
<RadioButton
|
|
android:id="@+id/rb_start_with"
|
|
style="@style/rg_rb_style"
|
|
android:text="@string/btn_start_with" />
|
|
|
|
<RadioButton
|
|
android:id="@+id/rb_end_with"
|
|
style="@style/rg_rb_style"
|
|
android:text="@string/btn_end_with" />
|
|
|
|
<RadioButton
|
|
android:id="@+id/rb_regex"
|
|
style="@style/rg_rb_style"
|
|
android:text="@string/btn_regex" />
|
|
|
|
</RadioGroup>
|
|
|
|
</LinearLayout>
|
|
|
|
<LinearLayout
|
|
android:id="@+id/layout_match_value"
|
|
style="@style/ruleBarStyle"
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:orientation="vertical"
|
|
android:visibility="gone">
|
|
|
|
<TextView
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:layout_marginStart="5dp"
|
|
android:text="@string/match_value"
|
|
android:textStyle="bold" />
|
|
|
|
<com.xuexiang.xui.widget.edittext.materialedittext.MaterialEditText
|
|
android:id="@+id/et_value"
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:hint="@string/match_value_tips"
|
|
android:inputType="textMultiLine"
|
|
app:met_clearButton="true" />
|
|
|
|
<com.xuexiang.xui.widget.spinner.materialspinner.MaterialSpinner
|
|
android:id="@+id/sp_call_type"
|
|
style="@style/Material.SpinnerStyle"
|
|
android:layout_marginTop="@dimen/config_margin_4dp"
|
|
android:visibility="gone" />
|
|
|
|
<LinearLayout
|
|
android:id="@+id/layout_app_list"
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:gravity="center_vertical"
|
|
android:orientation="horizontal"
|
|
android:visibility="gone">
|
|
|
|
<TextView
|
|
android:layout_width="wrap_content"
|
|
android:layout_height="wrap_content"
|
|
android:layout_marginStart="5dp"
|
|
android:text="@string/choose_app"
|
|
android:textSize="@dimen/text_size_small"
|
|
android:textStyle="bold" />
|
|
|
|
<com.xuexiang.xui.widget.spinner.editspinner.EditSpinner
|
|
android:id="@+id/sp_app"
|
|
android:layout_width="0dp"
|
|
android:layout_height="wrap_content"
|
|
android:layout_marginStart="5dp"
|
|
android:layout_weight="1"
|
|
app:es_hint="@string/choose_app_hint"
|
|
app:es_maxLength="20"
|
|
app:es_maxLine="1" />
|
|
|
|
</LinearLayout>
|
|
|
|
<TextView
|
|
android:id="@+id/tv_mu_rule_tips"
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:text="@string/mu_rule_sms_tips"
|
|
android:visibility="gone" />
|
|
|
|
</LinearLayout>
|
|
|
|
<LinearLayout
|
|
style="@style/ruleBarStyleWithSwitch"
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:orientation="horizontal">
|
|
|
|
<TextView
|
|
android:layout_width="0dp"
|
|
android:layout_height="wrap_content"
|
|
android:layout_weight="3"
|
|
android:text="@string/enable_custom_templates"
|
|
android:textStyle="bold" />
|
|
|
|
<com.xuexiang.xui.widget.button.switchbutton.SwitchButton
|
|
android:id="@+id/sb_sms_template"
|
|
style="@style/SwitchButtonStyle"
|
|
android:layout_width="wrap_content"
|
|
android:layout_height="wrap_content" />
|
|
|
|
</LinearLayout>
|
|
|
|
<LinearLayout
|
|
android:id="@+id/layout_sms_template"
|
|
style="@style/ruleBarStyleNoMarginTop"
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:orientation="vertical"
|
|
android:visibility="gone">
|
|
|
|
<TextView
|
|
android:layout_width="wrap_content"
|
|
android:layout_height="wrap_content"
|
|
android:text="@string/enable_custom_templates_tips"
|
|
android:textSize="@dimen/text_size_small" />
|
|
|
|
<com.xuexiang.xui.widget.edittext.materialedittext.MaterialEditText
|
|
android:id="@+id/et_sms_template"
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:inputType="textMultiLine"
|
|
app:met_clearButton="true" />
|
|
|
|
<LinearLayout
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:orientation="horizontal">
|
|
|
|
<com.xuexiang.xui.widget.button.shadowbutton.RippleShadowShadowButton
|
|
android:id="@+id/bt_insert_sender"
|
|
style="@style/insertButtonStyle"
|
|
android:text="@string/insert_sender" />
|
|
|
|
<com.xuexiang.xui.widget.button.shadowbutton.RippleShadowShadowButton
|
|
android:id="@+id/bt_insert_content"
|
|
style="@style/insertButtonStyle"
|
|
android:layout_marginStart="5dp"
|
|
android:text="@string/insert_content" />
|
|
|
|
<com.xuexiang.xui.widget.button.shadowbutton.RippleShadowShadowButton
|
|
android:id="@+id/bt_insert_extra"
|
|
style="@style/insertButtonStyle"
|
|
android:layout_marginStart="5dp"
|
|
android:text="@string/insert_extra" />
|
|
|
|
<com.xuexiang.xui.widget.button.shadowbutton.RippleShadowShadowButton
|
|
android:id="@+id/bt_insert_sender_app"
|
|
style="@style/insertButtonStyle"
|
|
android:layout_marginStart="5dp"
|
|
android:text="@string/insert_sender_app" />
|
|
|
|
<com.xuexiang.xui.widget.button.shadowbutton.RippleShadowShadowButton
|
|
android:id="@+id/bt_insert_uid"
|
|
style="@style/insertButtonStyle"
|
|
android:layout_marginStart="5dp"
|
|
android:text="@string/insert_uid" />
|
|
|
|
<com.xuexiang.xui.widget.button.shadowbutton.RippleShadowShadowButton
|
|
android:id="@+id/bt_insert_title_app"
|
|
style="@style/insertButtonStyle"
|
|
android:layout_marginStart="5dp"
|
|
android:text="@string/insert_title_app" />
|
|
|
|
<com.xuexiang.xui.widget.button.shadowbutton.RippleShadowShadowButton
|
|
android:id="@+id/bt_insert_content_app"
|
|
style="@style/insertButtonStyle"
|
|
android:layout_marginStart="5dp"
|
|
android:text="@string/insert_content_app" />
|
|
|
|
<com.xuexiang.xui.widget.button.shadowbutton.RippleShadowShadowButton
|
|
android:id="@+id/bt_insert_time"
|
|
style="@style/insertButtonStyle"
|
|
android:layout_marginStart="5dp"
|
|
android:text="@string/insert_time" />
|
|
|
|
<com.xuexiang.xui.widget.button.shadowbutton.RippleShadowShadowButton
|
|
android:id="@+id/bt_insert_device_name"
|
|
style="@style/insertButtonStyle"
|
|
android:layout_marginStart="5dp"
|
|
android:text="@string/insert_device_name" />
|
|
|
|
</LinearLayout>
|
|
|
|
</LinearLayout>
|
|
|
|
<LinearLayout
|
|
style="@style/ruleBarStyleWithSwitch"
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:orientation="horizontal">
|
|
|
|
<TextView
|
|
android:layout_width="0dp"
|
|
android:layout_height="wrap_content"
|
|
android:layout_weight="3"
|
|
android:text="@string/enable_regex_replace"
|
|
android:textStyle="bold" />
|
|
|
|
<com.xuexiang.xui.widget.button.switchbutton.SwitchButton
|
|
android:id="@+id/sb_regex_replace"
|
|
style="@style/SwitchButtonStyle"
|
|
android:layout_width="wrap_content"
|
|
android:layout_height="wrap_content" />
|
|
|
|
</LinearLayout>
|
|
|
|
<LinearLayout
|
|
android:id="@+id/layout_regex_replace"
|
|
style="@style/ruleBarStyleNoMarginTop"
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:orientation="vertical"
|
|
android:visibility="gone">
|
|
|
|
<TextView
|
|
android:layout_width="wrap_content"
|
|
android:layout_height="wrap_content"
|
|
android:text="@string/enable_regex_replace_tips"
|
|
android:textSize="@dimen/text_size_small" />
|
|
|
|
<com.xuexiang.xui.widget.edittext.materialedittext.MaterialEditText
|
|
android:id="@+id/et_regex_replace"
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:inputType="textMultiLine"
|
|
app:met_clearButton="true" />
|
|
|
|
</LinearLayout>
|
|
|
|
<LinearLayout
|
|
style="@style/ruleBarStyleWithSwitch"
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:orientation="horizontal">
|
|
|
|
<TextView
|
|
android:layout_width="0dp"
|
|
android:layout_height="wrap_content"
|
|
android:layout_weight="3"
|
|
android:text="@string/switch_rule_status"
|
|
android:textStyle="bold" />
|
|
|
|
<com.xuexiang.xui.widget.button.switchbutton.SwitchButton
|
|
android:id="@+id/sb_status"
|
|
style="@style/SwitchButtonStyle"
|
|
android:layout_width="wrap_content"
|
|
android:layout_height="wrap_content"
|
|
android:checked="true" />
|
|
|
|
</LinearLayout>
|
|
|
|
<LinearLayout
|
|
android:id="@+id/layout_silent_period"
|
|
style="@style/ruleBarStyleWithSwitch"
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:paddingEnd="15dp"
|
|
tools:ignore="RtlSymmetry">
|
|
|
|
<LinearLayout
|
|
android:layout_width="180dp"
|
|
android:layout_height="wrap_content"
|
|
android:orientation="vertical">
|
|
|
|
<TextView
|
|
android:layout_width="wrap_content"
|
|
android:layout_height="wrap_content"
|
|
android:text="@string/silent_time_period"
|
|
android:textStyle="bold"
|
|
tools:ignore="RelativeOverlap" />
|
|
|
|
<TextView
|
|
android:layout_width="wrap_content"
|
|
android:layout_height="wrap_content"
|
|
android:text="@string/silent_time_period_tips"
|
|
android:textSize="@dimen/text_size_mini"
|
|
tools:ignore="SmallSp,TooManyViews" />
|
|
|
|
</LinearLayout>
|
|
|
|
<TextView
|
|
android:id="@+id/tv_silent_period"
|
|
android:layout_width="0dp"
|
|
android:layout_height="wrap_content"
|
|
android:layout_marginStart="5dp"
|
|
android:layout_weight="1"
|
|
android:gravity="center" />
|
|
|
|
<com.xuexiang.xui.widget.button.shadowbutton.RippleShadowShadowButton
|
|
android:id="@+id/btn_silent_period"
|
|
android:layout_width="wrap_content"
|
|
android:layout_height="wrap_content"
|
|
android:layout_marginStart="5dp"
|
|
android:gravity="center"
|
|
android:padding="5dp"
|
|
android:text="@string/select"
|
|
android:textColor="@color/white"
|
|
android:textSize="@dimen/text_size_mini"
|
|
app:sb_color_unpressed="@color/colorPrimary"
|
|
app:sb_ripple_color="@color/white"
|
|
app:sb_ripple_duration="500"
|
|
app:sb_shape_type="rectangle"
|
|
tools:ignore="SmallSp" />
|
|
|
|
</LinearLayout>
|
|
|
|
</LinearLayout>
|
|
|
|
</androidx.core.widget.NestedScrollView>
|
|
|
|
<LinearLayout
|
|
android:layout_width="match_parent"
|
|
android:layout_height="wrap_content"
|
|
android:gravity="center"
|
|
android:orientation="horizontal"
|
|
android:padding="10dp">
|
|
|
|
<com.xuexiang.xui.widget.textview.supertextview.SuperButton
|
|
android:id="@+id/btn_del"
|
|
style="@style/SuperButton.Gray.Icon.Spacing"
|
|
android:drawableStart="@drawable/ic_delete"
|
|
android:text="@string/del"
|
|
tools:ignore="RtlSymmetry,TextContrastCheck,TouchTargetSizeCheck" />
|
|
|
|
<com.xuexiang.xui.widget.textview.supertextview.SuperButton
|
|
android:id="@+id/btn_save"
|
|
style="@style/SuperButton.Blue.Icon.Spacing"
|
|
android:drawableStart="@drawable/ic_save"
|
|
android:text="@string/save"
|
|
tools:ignore="RtlSymmetry,TextContrastCheck,TouchTargetSizeCheck" />
|
|
|
|
<com.xuexiang.xui.widget.textview.supertextview.SuperButton
|
|
android:id="@+id/btn_test"
|
|
style="@style/SuperButton.Green.Icon.Spacing"
|
|
android:drawableStart="@drawable/ic_test"
|
|
android:text="@string/test"
|
|
tools:ignore="RtlSymmetry,TextContrastCheck,TouchTargetSizeCheck" />
|
|
|
|
</LinearLayout>
|
|
|
|
</LinearLayout> |