1.0.12: UI — убрана HOLD TO TALK, PTT крупнее, строка говорящего между блоками
- Удалена надпись HOLD TO TALK (lbl_ptt_hint). - PTT-кнопка увеличена 130→170 dp. - Строка говорящего перенесена между блоками «на связи» и индикаторами; единый формат: «Говорит UA1ZBE TG12» при приёме, «UA1ZBE TG12» когда приёма нет (шрифт прежний).
This commit is contained in:
@@ -57,10 +57,10 @@ class MainActivity : Activity(), SvxService.Listener {
|
||||
private lateinit var lblSubtitle: TextView
|
||||
private lateinit var lblCallsign: TextView
|
||||
private lateinit var lblTg: TextView
|
||||
private lateinit var lblTalkerTitle: TextView
|
||||
private lateinit var lblTalker: TextView
|
||||
private lateinit var lblDuplex: TextView
|
||||
private lateinit var lblPttHint: TextView
|
||||
private var lastTalkerCs = ""
|
||||
private var lastTalkerTg = -1L
|
||||
private lateinit var lblTxState: TextView
|
||||
private lateinit var lblConnectHint: TextView
|
||||
private lateinit var connectZone: View
|
||||
@@ -147,10 +147,8 @@ class MainActivity : Activity(), SvxService.Listener {
|
||||
statusChip = findViewById(R.id.status_chip)
|
||||
lblAppTitle = findViewById(R.id.lbl_app_title)
|
||||
lblSubtitle = findViewById(R.id.lbl_subtitle)
|
||||
lblTalkerTitle = findViewById(R.id.lbl_talker_title)
|
||||
lblTalker = findViewById(R.id.lbl_talker)
|
||||
lblDuplex = findViewById(R.id.lbl_duplex)
|
||||
lblPttHint = findViewById(R.id.lbl_ptt_hint)
|
||||
lblTxState = findViewById(R.id.lbl_tx_state)
|
||||
lblConnectHint = findViewById(R.id.lbl_connect_hint)
|
||||
connectZone = findViewById(R.id.connect_zone)
|
||||
@@ -274,7 +272,6 @@ class MainActivity : Activity(), SvxService.Listener {
|
||||
toast(getString(R.string.perm_mic))
|
||||
return
|
||||
}
|
||||
lblPttHint.text = getString(R.string.ptt_talking)
|
||||
lblTxState.text = getString(R.string.status_big_talking)
|
||||
showDuplex(getString(R.string.duplex_tx), R.color.danger, null)
|
||||
svc?.startTx()
|
||||
@@ -283,7 +280,6 @@ class MainActivity : Activity(), SvxService.Listener {
|
||||
override fun onPttUp() {
|
||||
Log.d("SVXRemote", "PTT up")
|
||||
svc?.stopTx()
|
||||
lblPttHint.text = getString(R.string.hold_to_talk)
|
||||
lblTxState.text =
|
||||
if (connected) getString(R.string.status_big_connected)
|
||||
else getString(R.string.status_big_disconnected)
|
||||
@@ -376,7 +372,6 @@ class MainActivity : Activity(), SvxService.Listener {
|
||||
lblTxState.text = getString(R.string.status_big_disconnected)
|
||||
lblTxState.setTextColor(getColor(R.color.danger))
|
||||
lblConnectHint.text = getString(R.string.hint_connect)
|
||||
lblPttHint.text = getString(R.string.hold_to_talk)
|
||||
}
|
||||
|
||||
ReflectorClient.STATE_CONNECTING,
|
||||
@@ -454,9 +449,9 @@ class MainActivity : Activity(), SvxService.Listener {
|
||||
}
|
||||
resetMonitorIdle()
|
||||
}
|
||||
lblTalkerTitle.text = getString(R.string.talker_now, tg)
|
||||
lblTalkerTitle.setTextColor(getColor(R.color.text_secondary))
|
||||
lblTalker.text = callsign
|
||||
lastTalkerCs = callsign
|
||||
lastTalkerTg = tg
|
||||
updateTalkerLine(active = true)
|
||||
if (!pttButton.isPressed2) {
|
||||
showDuplex(getString(R.string.duplex_rx), R.color.accent, DUPLEX_RX_HIDE_MS)
|
||||
}
|
||||
@@ -464,7 +459,20 @@ class MainActivity : Activity(), SvxService.Listener {
|
||||
}
|
||||
|
||||
override fun onTalkerStop(tg: Long, callsign: String) {
|
||||
// последний говоривший остаётся на экране
|
||||
// последний говоривший остаётся на экране, но без префикса «Говорит»
|
||||
mainHandler.post { updateTalkerLine(active = false) }
|
||||
}
|
||||
|
||||
/** Единая строка говорящего: «Говорит …» при приёме, иначе позывной+TG. */
|
||||
private fun updateTalkerLine(active: Boolean) {
|
||||
if (lastTalkerCs.isEmpty()) {
|
||||
lblTalker.text = ""
|
||||
return
|
||||
}
|
||||
lblTalker.text = if (active)
|
||||
getString(R.string.talker_active_fmt, lastTalkerCs, lastTalkerTg)
|
||||
else
|
||||
getString(R.string.talker_idle_fmt, lastTalkerCs, lastTalkerTg)
|
||||
}
|
||||
|
||||
override fun onNodeJoined(callsign: String, tg: Long?) {
|
||||
|
||||
@@ -154,11 +154,24 @@
|
||||
android:text="@string/status_disconnected" />
|
||||
</LinearLayout>
|
||||
|
||||
<!-- Говорящий (единая строка): «Говорит …» при приёме, иначе позывной+TG -->
|
||||
<TextView
|
||||
android:id="@+id/lbl_talker"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="14dp"
|
||||
android:gravity="center"
|
||||
android:textColor="@color/accent"
|
||||
android:textSize="22sp"
|
||||
android:textStyle="bold"
|
||||
android:singleLine="true"
|
||||
android:ellipsize="end" />
|
||||
|
||||
<!-- S-метры -->
|
||||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="28dp"
|
||||
android:layout_marginTop="16dp"
|
||||
android:orientation="vertical"
|
||||
android:background="@drawable/bg_section"
|
||||
android:paddingStart="14dp"
|
||||
@@ -223,28 +236,6 @@
|
||||
android:visibility="gone" />
|
||||
</LinearLayout>
|
||||
|
||||
<!-- Последний говоривший -->
|
||||
<TextView
|
||||
android:id="@+id/lbl_talker_title"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="24dp"
|
||||
android:gravity="center"
|
||||
android:textColor="@color/text_secondary"
|
||||
android:textSize="13sp"
|
||||
android:text="@string/talker_last_none" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/lbl_talker"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:gravity="center"
|
||||
android:textColor="@color/accent"
|
||||
android:textSize="22sp"
|
||||
android:textStyle="bold"
|
||||
android:singleLine="true"
|
||||
android:ellipsize="end" />
|
||||
|
||||
<!-- Индикация направления: RX (приём) / TX (передача) -->
|
||||
<TextView
|
||||
android:id="@+id/lbl_duplex"
|
||||
@@ -264,19 +255,8 @@
|
||||
<!-- Кнопка PTT -->
|
||||
<ru.ua1zbe.svxremote.ui.PttButton
|
||||
android:id="@+id/ptt_button"
|
||||
android:layout_width="130dp"
|
||||
android:layout_height="130dp" />
|
||||
|
||||
<TextView
|
||||
android:id="@+id/lbl_ptt_hint"
|
||||
android:layout_width="wrap_content"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_marginTop="14dp"
|
||||
android:gravity="center"
|
||||
android:textColor="@color/text_secondary"
|
||||
android:textSize="14sp"
|
||||
android:textStyle="bold"
|
||||
android:text="@string/hold_to_talk" />
|
||||
android:layout_width="170dp"
|
||||
android:layout_height="170dp" />
|
||||
|
||||
<Space
|
||||
android:layout_width="match_parent"
|
||||
|
||||
@@ -55,7 +55,8 @@
|
||||
<string name="record_delete_yes">Удалить</string>
|
||||
<string name="record_deleted">Удалено</string>
|
||||
<string name="status_monitoring">Мониторинг: %1$s</string>
|
||||
<string name="talker_now">Говорит TG%1$d</string>
|
||||
<string name="talker_active_fmt">Говорит %1$s TG%2$d</string>
|
||||
<string name="talker_idle_fmt">%1$s TG%2$d</string>
|
||||
<string name="duplex_rx">RX</string>
|
||||
<string name="duplex_tx">TX</string>
|
||||
<string name="status_big_disconnected">DISCONNECTED</string>
|
||||
@@ -63,7 +64,6 @@
|
||||
<string name="status_big_talking">ПЕРЕДАЧА</string>
|
||||
<string name="hint_connect">Нажмите, чтобы подключиться</string>
|
||||
<string name="hint_disconnect">Нажмите, чтобы отключиться</string>
|
||||
<string name="hold_to_talk">HOLD TO TALK</string>
|
||||
<string name="meter_rx">RX</string>
|
||||
<string name="meter_mic">MIC</string>
|
||||
<string name="meter_idle">---</string>
|
||||
|
||||
Reference in New Issue
Block a user