Add branding to DetailsFragment and TitleHelper with RowsFragment.
b/16029942 Change-Id: I4179245c110ce74ebd5e50d55432e8ed3332d52b
This commit is contained in:
@@ -35,6 +35,7 @@ import android.support.v17.leanback.widget.Row;
|
||||
import android.support.v17.leanback.widget.RowPresenter;
|
||||
import android.support.v17.leanback.widget.SparseArrayObjectAdapter;
|
||||
import android.util.Log;
|
||||
import android.view.View;
|
||||
import android.widget.Toast;
|
||||
|
||||
public class DetailsFragment extends android.support.v17.leanback.app.DetailsFragment {
|
||||
@@ -66,6 +67,16 @@ public class DetailsFragment extends android.support.v17.leanback.app.DetailsFra
|
||||
Log.i(TAG, "onCreate");
|
||||
super.onCreate(savedInstanceState);
|
||||
|
||||
setBadgeDrawable(getActivity().getResources().getDrawable(R.drawable.ic_title));
|
||||
setTitle("Leanback Sample App");
|
||||
setOnSearchClickedListener(new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View view) {
|
||||
Intent intent = new Intent(getActivity(), SearchActivity.class);
|
||||
startActivity(intent);
|
||||
}
|
||||
});
|
||||
|
||||
mActionPlay = new Action(ACTION_PLAY, "Play");
|
||||
mActionRent = new Action(ACTION_RENT, "Rent", "$3.99",
|
||||
getResources().getDrawable(R.drawable.ic_action_a));
|
||||
|
||||
@@ -14,27 +14,45 @@
|
||||
package com.example.android.leanback;
|
||||
|
||||
import android.app.Activity;
|
||||
import android.content.Intent;
|
||||
import android.os.Bundle;
|
||||
import android.support.v17.leanback.R;
|
||||
import android.view.LayoutInflater;
|
||||
import android.support.v17.leanback.widget.BrowseFrameLayout;
|
||||
import android.support.v17.leanback.widget.TitleHelper;
|
||||
import android.support.v17.leanback.widget.TitleView;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
import android.widget.TextView;
|
||||
|
||||
public class RowsActivity extends Activity implements RowsFragment.OnRowsFirstLineSelectedListener
|
||||
public class RowsActivity extends Activity
|
||||
{
|
||||
TextView mTitleView;
|
||||
private RowsFragment mRowsFragment;
|
||||
private TitleHelper mTitleHelper;
|
||||
|
||||
/** Called when the activity is first created. */
|
||||
@Override
|
||||
public void onCreate(Bundle savedInstanceState)
|
||||
{
|
||||
public void onCreate(Bundle savedInstanceState) {
|
||||
super.onCreate(savedInstanceState);
|
||||
setContentView(R.layout.rows);
|
||||
mTitleView = (TextView) findViewById(R.id.rows_title);
|
||||
|
||||
mRowsFragment = (RowsFragment) getFragmentManager().findFragmentById(
|
||||
R.id.main_rows_fragment);
|
||||
|
||||
setupTitleFragment();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onSelectedFirstRow(boolean firstRow) {
|
||||
mTitleView.setVisibility(firstRow ? View.VISIBLE : View.INVISIBLE);
|
||||
private void setupTitleFragment() {
|
||||
TitleView titleView = (TitleView) findViewById(R.id.title);
|
||||
titleView.setTitle("RowsFragment");
|
||||
titleView.setOnSearchClickedListener(new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View view) {
|
||||
Intent intent = new Intent(RowsActivity.this, SearchActivity.class);
|
||||
startActivity(intent);
|
||||
}
|
||||
});
|
||||
|
||||
BrowseFrameLayout frameLayout = (BrowseFrameLayout) findViewById(R.id.rows_frame);
|
||||
mTitleHelper = new TitleHelper(frameLayout, titleView);
|
||||
frameLayout.setOnFocusSearchListener(mTitleHelper.getOnFocusSearchListener());
|
||||
mRowsFragment.setTitleHelper(mTitleHelper);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -16,6 +16,8 @@ package com.example.android.leanback;
|
||||
import android.app.Activity;
|
||||
import android.content.Intent;
|
||||
import android.os.Bundle;
|
||||
import android.support.v17.leanback.widget.TitleHelper;
|
||||
import android.support.v17.leanback.widget.TitleView;
|
||||
import android.support.v4.app.ActivityOptionsCompat;
|
||||
import android.support.v17.leanback.R;
|
||||
import android.support.v17.leanback.widget.ArrayObjectAdapter;
|
||||
@@ -35,10 +37,6 @@ import android.view.ViewGroup;
|
||||
|
||||
public class RowsFragment extends android.support.v17.leanback.app.RowsFragment {
|
||||
|
||||
public static interface OnRowsFirstLineSelectedListener {
|
||||
void onSelectedFirstRow(boolean firstRow);
|
||||
}
|
||||
|
||||
private static final String TAG = "leanback.RowsFragment";
|
||||
|
||||
private static final int NUM_ROWS = 10;
|
||||
@@ -46,7 +44,11 @@ public class RowsFragment extends android.support.v17.leanback.app.RowsFragment
|
||||
private static final boolean USE_FIXED_ROW_HEIGHT = false;
|
||||
|
||||
private ArrayObjectAdapter mRowsAdapter;
|
||||
private OnRowsFirstLineSelectedListener mCallback;
|
||||
private TitleHelper mTitleHelper;
|
||||
|
||||
public void setTitleHelper(TitleHelper titleHelper) {
|
||||
mTitleHelper = titleHelper;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onCreate(Bundle savedInstanceState) {
|
||||
@@ -60,28 +62,14 @@ public class RowsFragment extends android.support.v17.leanback.app.RowsFragment
|
||||
public void onItemSelected(Presenter.ViewHolder itemViewHolder, Object item,
|
||||
RowPresenter.ViewHolder rowViewHolder, Row row) {
|
||||
Log.i(TAG, "onItemSelected: " + item + " row " + row);
|
||||
if (mCallback == null) {
|
||||
return;
|
||||
}
|
||||
if (mRowsAdapter != null && mRowsAdapter.size() > 0 && row != null &&
|
||||
row != mRowsAdapter.get(0)) {
|
||||
mCallback.onSelectedFirstRow(false);
|
||||
} else {
|
||||
mCallback.onSelectedFirstRow(true);
|
||||
if (mTitleHelper != null) {
|
||||
mTitleHelper.showTitle(getAdapter() == null || getAdapter().size() == 0 ||
|
||||
getAdapter().get(0) == row);
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onAttach(Activity activity) {
|
||||
super.onAttach(activity);
|
||||
// This makes sure that the container activity has implemented
|
||||
if (activity instanceof OnRowsFirstLineSelectedListener) {
|
||||
mCallback = (OnRowsFirstLineSelectedListener) activity;
|
||||
}
|
||||
}
|
||||
|
||||
private void setupRows() {
|
||||
ListRowPresenter lrp = new ListRowPresenter();
|
||||
|
||||
|
||||
Reference in New Issue
Block a user