Welcome to the Treehouse Community
Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.
Looking to learn something new?
Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.
Start your free trialErin Kabbash
5,210 PointsUpdating Other GridViews code challenge step 4 of 5
Hello. I am stuck on this code challenege..
"Now we need to add an empty view for the GridView in onCreate(). First, set mEmptyTextView to the view that has the ID android.R.id.empty."
I keep getting the error "Bummer! Make sure to set mEmptyTextView! Hint: Use 'findViewById()'" but to my knowledge I am.. any one out there that can catch the error? Thanks in advanced for any help you can provide.
import android.app.Activity;
import android.os.Bundle;
import android.view.ListView;
import android.view.MenuItem;
import android.view.View;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.GridView;
import android.widget.TextView;
public class InviteActivity extends Activity {
/*
* Some code has been omitted for brevity!
*/
public MenuItem mInviteMenuItem;
public GridView mGridView;
public TextView mEmptyTextView;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.player_grid);
mGridView = (GridView)findViewById(R.id.gridView);
mGridView.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE);
mGridView.setOnItemClickListener(mOnItemClickListener);
TextView mEmptyTextView = (TextView) findViewById(android.R.id.empty);
mGridView.setEmptyView(mEmptyTextView );
}
public OnItemClickListener mOnItemClickListener = new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
// Start by adding code in here!
if(mGridView.getCheckedItemCount() > 0){
mInviteMenuItem.setVisibility(View.VISIBLE);
}
else{
mInviteMenuItem.setVisibility(View.INVISIBLE);
}
}
};
}
1 Answer
Erin Kabbash
5,210 PointsI figured it out actually.. I was declaring public TextView mEmptyTextView; twice. Little confusing because in the tutorials they declare inline but in the code challenge they declare at the top. Maybe to make it more.. challenging? haha. So basically if you get stuck here just change...
TextView mEmptyTextView = (TextView) findViewById(android.R.id.empty);
to
mEmptyTextView = (TextView) findViewById(android.R.id.empty);
Happy Coding!