Add alphabetical sorting for Android TV channel list

Alphabetical Sorting Features:
- ChannelRepository updated with alphabetical sorting
- ChannelAdapter optimized for sorted display
- Channel focus and selection improvements
- Added arrays.xml for channel categories and sorting
- Enhanced UI components for TV navigation

Code Changes:
- ChannelRepository: addSortChannels() method
- ChannelAdapter: optimized for alphabetical display
- AndroidManifest.xml: updated for sorting features
- item_channel.xml: improved focus states
- bg_channel_item_selector.xml: enhanced visual feedback

TV Navigation Improvements:
- Consistent alphabetical order (A-Z)
- Better focus management for D-Pad navigation
- Enhanced visual indicators for selected channels
- Improved readability on large screens
- Quick channel location with remote control

This improves the Android TV user experience by making channel discovery faster and more intuitive.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
2025-11-14 21:06:09 +00:00
parent 24a4c93fb5
commit ab43ce7794
6 changed files with 48 additions and 20 deletions

View File

@@ -1,30 +1,39 @@
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_selected="true">
<shape android:shape="rectangle">
<solid android:color="#88003C8F" />
<corners android:radius="18dp" />
<stroke
android:width="3dp"
android:color="#FFFFFFFF" />
</shape>
</item>
<item android:state_focused="true">
<shape android:shape="rectangle">
<solid android:color="#66FFFFFF" />
<corners android:radius="16dp" />
<solid android:color="#55003C8F" />
<corners android:radius="18dp" />
<stroke
android:width="2dp"
android:width="3dp"
android:color="#FFFFFFFF" />
</shape>
</item>
<item android:state_pressed="true">
<shape android:shape="rectangle">
<solid android:color="#55FFFFFF" />
<corners android:radius="16dp" />
<solid android:color="#55003C8F" />
<corners android:radius="18dp" />
<stroke
android:width="2dp"
android:width="3dp"
android:color="#FFFFFFFF" />
</shape>
</item>
<item>
<shape android:shape="rectangle">
<solid android:color="#33212121" />
<corners android:radius="16dp" />
<corners android:radius="18dp" />
<stroke
android:width="1dp"
android:color="#55FFFFFF" />
android:width="2dp"
android:color="#33FFFFFF" />
</shape>
</item>
</selector>