diff --git a/flomo-ai/app/src/main/java/com/example/flomo_ai/SecondActivity.kt b/flomo-ai/app/src/main/java/com/example/flomo_ai/SecondActivity.kt index 89c7b49..98e166e 100644 --- a/flomo-ai/app/src/main/java/com/example/flomo_ai/SecondActivity.kt +++ b/flomo-ai/app/src/main/java/com/example/flomo_ai/SecondActivity.kt @@ -46,10 +46,8 @@ data class ButtonConfig(val id: String, val label: String, val action: String, v class SecondActivity : AppCompatActivity() { // View references - private lateinit var spModelSelector: Spinner private lateinit var llModelList: LinearLayout private lateinit var btnAddModel: Button - private lateinit var btnDeleteModel: Button private lateinit var etBaseUrl: EditText private lateinit var etApiKey: EditText private lateinit var btnToggleApiKey: ImageButton @@ -159,9 +157,8 @@ class SecondActivity : AppCompatActivity() { btnToggleApiKey = findViewById(R.id.btnToggleApiKey) etModel = findViewById(R.id.etModel) etModelName = findViewById(R.id.etModelName) - spModelSelector = findViewById(R.id.spModelSelector) + llModelList = findViewById(R.id.llModelList) btnAddModel = findViewById(R.id.btnAddModel) - btnDeleteModel = findViewById(R.id.btnDeleteModel) btnTestConnection = findViewById(R.id.btnTestConnection) tvTestStatus = findViewById(R.id.tvTestStatus) @@ -351,23 +348,42 @@ class SecondActivity : AppCompatActivity() { etApiKey.setSelection(etApiKey.text.length) } - private fun refreshModelSelector() { - val names = llmConfigs.map { it.name.ifEmpty { "未命名" } }.toMutableList() - val adapter = ArrayAdapter(this, android.R.layout.simple_spinner_item, names) - adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item) - spModelSelector.adapter = adapter + private fun refreshModelList() { + llModelList.removeAllViews() + for ((index, config) in llmConfigs.withIndex()) { + val view = layoutInflater.inflate(R.layout.model_list_item, null) + val tvName = view.findViewById(R.id.tvModelName) + val btnEdit = view.findViewById