Updated OnlineFeedView layout
This commit is contained in:
parent
1348169d88
commit
f1612995a2
|
@ -4,6 +4,8 @@ import android.app.Dialog;
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
import android.content.DialogInterface;
|
import android.content.DialogInterface;
|
||||||
import android.content.Intent;
|
import android.content.Intent;
|
||||||
|
import android.graphics.LightingColorFilter;
|
||||||
|
import android.os.Build;
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import android.support.annotation.NonNull;
|
import android.support.annotation.NonNull;
|
||||||
import android.support.annotation.UiThread;
|
import android.support.annotation.UiThread;
|
||||||
|
@ -30,6 +32,7 @@ import android.widget.TextView;
|
||||||
import com.bumptech.glide.Glide;
|
import com.bumptech.glide.Glide;
|
||||||
import com.bumptech.glide.request.RequestOptions;
|
import com.bumptech.glide.request.RequestOptions;
|
||||||
|
|
||||||
|
import de.danoeh.antennapod.core.glide.FastBlurTransformation;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
import org.greenrobot.eventbus.EventBus;
|
import org.greenrobot.eventbus.EventBus;
|
||||||
import org.greenrobot.eventbus.Subscribe;
|
import org.greenrobot.eventbus.Subscribe;
|
||||||
|
@ -393,6 +396,7 @@ public class OnlineFeedViewActivity extends AppCompatActivity {
|
||||||
this.selectedDownloadUrl = feed.getDownload_url();
|
this.selectedDownloadUrl = feed.getDownload_url();
|
||||||
EventDistributor.getInstance().register(listener);
|
EventDistributor.getInstance().register(listener);
|
||||||
ListView listView = findViewById(R.id.listview);
|
ListView listView = findViewById(R.id.listview);
|
||||||
|
listView.setSelector(android.R.color.transparent);
|
||||||
LayoutInflater inflater = LayoutInflater.from(this);
|
LayoutInflater inflater = LayoutInflater.from(this);
|
||||||
View header = inflater.inflate(R.layout.onlinefeedview_header, listView, false);
|
View header = inflater.inflate(R.layout.onlinefeedview_header, listView, false);
|
||||||
listView.addHeaderView(header);
|
listView.addHeaderView(header);
|
||||||
|
@ -400,6 +404,10 @@ public class OnlineFeedViewActivity extends AppCompatActivity {
|
||||||
listView.setAdapter(new FeedItemlistDescriptionAdapter(this, 0, feed.getItems()));
|
listView.setAdapter(new FeedItemlistDescriptionAdapter(this, 0, feed.getItems()));
|
||||||
|
|
||||||
ImageView cover = header.findViewById(R.id.imgvCover);
|
ImageView cover = header.findViewById(R.id.imgvCover);
|
||||||
|
ImageView headerBackground = header.findViewById(R.id.imgvBackground);
|
||||||
|
header.findViewById(R.id.butShowInfo).setVisibility(View.INVISIBLE);
|
||||||
|
header.findViewById(R.id.butShowSettings).setVisibility(View.INVISIBLE);
|
||||||
|
headerBackground.setColorFilter(new LightingColorFilter(0xff828282, 0x000000));
|
||||||
TextView title = header.findViewById(R.id.txtvTitle);
|
TextView title = header.findViewById(R.id.txtvTitle);
|
||||||
TextView author = header.findViewById(R.id.txtvAuthor);
|
TextView author = header.findViewById(R.id.txtvAuthor);
|
||||||
TextView description = header.findViewById(R.id.txtvDescription);
|
TextView description = header.findViewById(R.id.txtvDescription);
|
||||||
|
@ -417,6 +425,15 @@ public class OnlineFeedViewActivity extends AppCompatActivity {
|
||||||
.fitCenter()
|
.fitCenter()
|
||||||
.dontAnimate())
|
.dontAnimate())
|
||||||
.into(cover);
|
.into(cover);
|
||||||
|
Glide.with(this)
|
||||||
|
.load(feed.getImageUrl())
|
||||||
|
.apply(new RequestOptions()
|
||||||
|
.placeholder(R.color.image_readability_tint)
|
||||||
|
.error(R.color.image_readability_tint)
|
||||||
|
.diskCacheStrategy(ApGlideSettings.AP_DISK_CACHE_STRATEGY)
|
||||||
|
.transform(new FastBlurTransformation())
|
||||||
|
.dontAnimate())
|
||||||
|
.into(headerBackground);
|
||||||
}
|
}
|
||||||
|
|
||||||
title.setText(feed.getTitle());
|
title.setText(feed.getTitle());
|
||||||
|
@ -445,6 +462,17 @@ public class OnlineFeedViewActivity extends AppCompatActivity {
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
final int MAX_LINES_COLLAPSED = 10;
|
||||||
|
description.setMaxLines(MAX_LINES_COLLAPSED);
|
||||||
|
description.setOnClickListener(v -> {
|
||||||
|
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN
|
||||||
|
&& description.getMaxLines() > MAX_LINES_COLLAPSED) {
|
||||||
|
description.setMaxLines(MAX_LINES_COLLAPSED);
|
||||||
|
} else {
|
||||||
|
description.setMaxLines(2000);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
if (alternateFeedUrls.isEmpty()) {
|
if (alternateFeedUrls.isEmpty()) {
|
||||||
spAlternateUrls.setVisibility(View.GONE);
|
spAlternateUrls.setVisibility(View.GONE);
|
||||||
} else {
|
} else {
|
||||||
|
|
|
@ -1,88 +1,33 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<LinearLayout
|
||||||
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
xmlns:tools="http://schemas.android.com/tools"
|
xmlns:tools="http://schemas.android.com/tools"
|
||||||
android:layout_width="match_parent"
|
android:orientation="vertical"
|
||||||
android:layout_height="match_parent">
|
|
||||||
|
|
||||||
<ImageView
|
|
||||||
android:id="@+id/imgvCover"
|
|
||||||
android:layout_width="@dimen/thumbnail_length_onlinefeedview"
|
|
||||||
android:layout_height="@dimen/thumbnail_length_onlinefeedview"
|
|
||||||
android:layout_alignParentLeft="true"
|
|
||||||
android:layout_alignParentStart="true"
|
|
||||||
android:layout_alignParentTop="true"
|
|
||||||
android:layout_marginLeft="16dp"
|
|
||||||
android:layout_marginRight="16dp"
|
|
||||||
android:layout_marginTop="16dp"
|
|
||||||
android:contentDescription="@string/cover_label"
|
|
||||||
tools:src="@drawable/ic_stat_antenna_default"
|
|
||||||
tools:background="@android:color/holo_green_dark" />
|
|
||||||
|
|
||||||
<TextView
|
|
||||||
android:id="@+id/txtvTitle"
|
|
||||||
style="@style/AntennaPod.TextView.Heading"
|
|
||||||
android:layout_width="0dp"
|
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_alignParentRight="true"
|
android:layout_width="match_parent">
|
||||||
android:layout_alignParentEnd="true"
|
|
||||||
android:layout_marginBottom="8dp"
|
|
||||||
android:layout_marginRight="16dp"
|
|
||||||
android:layout_marginEnd="16dp"
|
|
||||||
android:layout_marginTop="16dp"
|
|
||||||
android:layout_toRightOf="@id/imgvCover"
|
|
||||||
android:layout_toEndOf="@id/imgvCover"
|
|
||||||
android:ellipsize="end"
|
|
||||||
android:gravity="center_vertical"
|
|
||||||
android:maxLines="2"
|
|
||||||
tools:text="Online feed title"
|
|
||||||
tools:background="@android:color/holo_green_dark" />
|
|
||||||
|
|
||||||
<TextView
|
<include layout="@layout/feeditemlist_header"/>
|
||||||
android:id="@+id/txtvAuthor"
|
|
||||||
android:layout_width="wrap_content"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:layout_below="@id/txtvTitle"
|
|
||||||
android:layout_marginBottom="8dp"
|
|
||||||
android:layout_marginRight="16dp"
|
|
||||||
android:layout_marginEnd="16dp"
|
|
||||||
android:layout_toRightOf="@id/imgvCover"
|
|
||||||
android:layout_toEndOf="@id/imgvCover"
|
|
||||||
android:ellipsize="end"
|
|
||||||
android:lines="1"
|
|
||||||
android:textColor="?android:attr/textColorSecondary"
|
|
||||||
android:textSize="@dimen/text_size_small"
|
|
||||||
tools:text="Online feed author"
|
|
||||||
tools:background="@android:color/holo_green_dark" />
|
|
||||||
|
|
||||||
<LinearLayout
|
<Spinner
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:layout_height="wrap_content"
|
|
||||||
android:layout_below="@id/imgvCover"
|
|
||||||
android:orientation="vertical">
|
|
||||||
|
|
||||||
|
|
||||||
<Spinner
|
|
||||||
android:id="@+id/spinnerAlternateUrls"
|
android:id="@+id/spinnerAlternateUrls"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_marginLeft="16dp"
|
android:layout_marginLeft="8dp"
|
||||||
android:layout_marginStart="16dp"
|
android:layout_marginRight="8dp"
|
||||||
android:layout_marginRight="16dp"
|
|
||||||
android:layout_marginEnd="16dp"
|
|
||||||
android:layout_marginTop="8dp"
|
android:layout_marginTop="8dp"
|
||||||
|
android:padding="8dp"
|
||||||
android:textColor="?android:attr/textColorPrimary"
|
android:textColor="?android:attr/textColorPrimary"
|
||||||
android:textSize="@dimen/text_size_micro" />
|
android:textSize="@dimen/text_size_micro"/>
|
||||||
|
|
||||||
<Button
|
<Button
|
||||||
android:id="@+id/butSubscribe"
|
android:id="@+id/butSubscribe"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:layout_margin="16dp"
|
android:layout_margin="16dp"
|
||||||
android:focusable="false"
|
android:focusable="false"
|
||||||
android:text="@string/subscribe_label" />
|
android:text="@string/subscribe_label"/>
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:id="@+id/txtvDescription"
|
android:id="@+id/txtvDescription"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
|
@ -91,10 +36,22 @@
|
||||||
android:layout_marginStart="16dp"
|
android:layout_marginStart="16dp"
|
||||||
android:layout_marginRight="16dp"
|
android:layout_marginRight="16dp"
|
||||||
android:layout_marginEnd="16dp"
|
android:layout_marginEnd="16dp"
|
||||||
|
android:ellipsize="end"
|
||||||
android:textColor="?android:attr/textColorSecondary"
|
android:textColor="?android:attr/textColorSecondary"
|
||||||
android:textSize="@dimen/text_size_small"
|
android:textSize="@dimen/text_size_small"
|
||||||
tools:text="@string/design_time_lorem_ipsum"
|
tools:text="@string/design_time_lorem_ipsum"
|
||||||
tools:background="@android:color/holo_green_dark"/>
|
tools:background="@android:color/holo_green_dark"/>
|
||||||
|
|
||||||
</LinearLayout>
|
<TextView
|
||||||
</RelativeLayout>
|
android:layout_width="wrap_content"
|
||||||
|
android:layout_height="wrap_content"
|
||||||
|
android:layout_marginBottom="16dp"
|
||||||
|
android:layout_marginLeft="16dp"
|
||||||
|
android:layout_marginStart="16dp"
|
||||||
|
android:layout_marginRight="16dp"
|
||||||
|
android:layout_marginEnd="16dp"
|
||||||
|
android:textColor="?attr/colorAccent"
|
||||||
|
android:textSize="@dimen/text_size_small"
|
||||||
|
android:text="@string/episodes_label"/>
|
||||||
|
|
||||||
|
</LinearLayout>
|
Loading…
Reference in New Issue