diff --git a/.idea/misc.xml b/.idea/misc.xml
index 7f6d989..b288df3 100644
--- a/.idea/misc.xml
+++ b/.idea/misc.xml
@@ -8,6 +8,7 @@
+
diff --git a/app/src/main/java/org/sifacai/vlcjellyfin/JAdapter.java b/app/src/main/java/org/sifacai/vlcjellyfin/JAdapter.java
index 44a412c..aeb6583 100644
--- a/app/src/main/java/org/sifacai/vlcjellyfin/JAdapter.java
+++ b/app/src/main/java/org/sifacai/vlcjellyfin/JAdapter.java
@@ -116,7 +116,6 @@ public class JAdapter extends RecyclerView.Adapter {
@Override
public int getItemCount() {
int count = items.size();
- Log.d(TAG, "getItemCount: 数据总数:" + count);
return count;
}
diff --git a/app/src/main/java/org/sifacai/vlcjellyfin/SearchActivity.java b/app/src/main/java/org/sifacai/vlcjellyfin/SearchActivity.java
index 603f5b7..9f6f3cd 100644
--- a/app/src/main/java/org/sifacai/vlcjellyfin/SearchActivity.java
+++ b/app/src/main/java/org/sifacai/vlcjellyfin/SearchActivity.java
@@ -1,44 +1,103 @@
package org.sifacai.vlcjellyfin;
import android.os.Bundle;
+import android.view.View;
+import android.widget.EditText;
+import android.widget.ImageView;
import androidx.annotation.Nullable;
+import androidx.appcompat.app.ActionBar;
+import com.google.gson.JsonArray;
+import com.google.gson.JsonObject;
import com.owen.tvrecyclerview.widget.TvRecyclerView;
import com.owen.tvrecyclerview.widget.V7GridLayoutManager;
public class SearchActivity extends BaseActivity{
- private TvRecyclerView mGridContiner = null;
+ private TvRecyclerView mGridContiner;
+ private JAdapter adapter;
private final int limit = 24;
private String BaseUrl;
+ private EditText searchTermEdit;
+ private ImageView searchBtn;
+
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_collection);
+ setContentView(R.layout.activity_search);
if (Utils.UserId.equals("") || Utils.AccessToken.equals("")) {
finish();
}
+ ActionBar actionBar = getSupportActionBar();
+ if(null != actionBar){
+ ImageView acb = actionBar.getCustomView().findViewById(R.id.activeBar_searchBtn);
+ if(null != acb){
+ acb.setVisibility(View.GONE);
+ }
+ }
+
mGridContiner = findViewById(R.id.mGridView);
V7GridLayoutManager v7GridLayoutManager = new V7GridLayoutManager(this,6);
mGridContiner.setLayoutManager(v7GridLayoutManager);
mGridContiner.setItemAnimator(null); //防崩溃
+ adapter = new JAdapter(new JsonArray());
+ mGridContiner.setAdapter(adapter);
+
BaseUrl = "/Users/"+Utils.UserId+"/Items?";
BaseUrl += "Fields=PrimaryImageAspectRatio,CanDelete,BasicSyncInfo,MediaSourceCount";
BaseUrl += "&Recursive=true&EnableTotalRecordCount=false&ImageTypeLimit=1&IncludePeople=false";
BaseUrl += "&IncludeMedia=true&IncludeGenres=false&IncludeStudios=false&IncludeArtists=false";
BaseUrl += "&Limit="+limit;
+
+ searchTermEdit = findViewById(R.id.searchTermEdit);
+ searchBtn = findViewById(R.id.searchBtn);
+ searchBtn.setOnClickListener(new View.OnClickListener() {
+ @Override
+ public void onClick(View view) {
+ String st = searchTermEdit.getText().toString().trim();
+ if(st.length()>0){
+ Search(st);
+ }
+ }
+ });
+
+ searchTermEdit.requestFocus();
}
private void Search(String searchTerm) {
- String url = BaseUrl + "&searchTerm="+searchTerm+"&IncludeItemTypes=Movie";
-
-
+ String movieUrl = BaseUrl + "&searchTerm="+searchTerm+"&IncludeItemTypes=Movie";
+ String seriesUrl = BaseUrl + "&searchTerm="+searchTerm+"&IncludeItemTypes=Series";
+ String episodeUrl = BaseUrl + "&searchTerm="+searchTerm+"&IncludeItemTypes=Episode";
+ new Thread(new Runnable() {
+ @Override
+ public void run() {
+ showLoadingDialog("搜索中………………");
+ String movieStr = Utils.okhttpSend(movieUrl);
+ String seriesStr = Utils.okhttpSend(seriesUrl);
+ JsonObject moviejob = Utils.JsonToObj(movieStr,JsonObject.class);
+ JsonObject seriesjob = Utils.JsonToObj(seriesStr,JsonObject.class);
+ JsonArray movieItems = moviejob.get("Items").getAsJsonArray();
+ JsonArray seriesItems = seriesjob.get("Items").getAsJsonArray();
+ movieItems.addAll(seriesItems);
+ fillItems(movieItems);
+ dismissLoadingDialog();
+ }
+ }).start();
+ }
+ private void fillItems(JsonArray items){
+ mAA.runOnUiThread(new Runnable() {
+ @Override
+ public void run() {
+ adapter.clearItems();
+ adapter.addItems(items);
+ }
+ });
}
}
diff --git a/app/src/main/res/layout/activity_search.xml b/app/src/main/res/layout/activity_search.xml
index c704b5b..90b89b2 100644
--- a/app/src/main/res/layout/activity_search.xml
+++ b/app/src/main/res/layout/activity_search.xml
@@ -7,13 +7,26 @@
+ android:layout_height="32dp"
+ android:padding="@dimen/padding_border"
+ android:orientation="horizontal" >
+ android:id="@+id/searchTermEdit"
+ android:layout_width="600dp"
+ android:layout_height="match_parent"
+ android:background="@drawable/shape_user_focus"
+ android:focusable="true"
+ android:tooltipText="关键字"/>
+
+