Note that there are some explanatory texts on larger screens.

plurals
  1. POfatal error - null pointer exception
    text
    copied!<p>im getting an a null pointer error, i can't find whats wrong with it. This is the activity code</p> <pre><code> package ie.gmit.gmitapp; import android.os.Bundle; import android.app.ListActivity; import android.content.Context; import android.view.View; import android.view.ViewGroup; import android.widget.BaseAdapter; import android.widget.LinearLayout; import android.widget.ListView; import android.widget.TextView; public class BusinessActivity extends ListActivity { protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //setContentView(R.layout.activity_bussiness); //use our own list adapter setListAdapter(new BusinessListAdapter(this)); } protected void onListItemClick(ListView l, View v, int position, long id) { ((BusinessListAdapter)getListAdapter()).toggle(position); } /** * A sample ListAdapter that presents content * from arrays of text and titles. * */ private class BusinessListAdapter extends BaseAdapter { public BusinessListAdapter(Context context) { mContext = context; } /** * The number of items in the list is determined by the number of speeches * in our array. * * @see android.widget.ListAdapter#getCount() */ public int getCount() { return mTitles.length; } /** * Since the data comes from an array, just returning * the index is sufficent to get at the data. If we * were using a more complex data structure, we * would return whatever object represents one * row in the list. * * @see android.widget.ListAdapter#getItem(int) */ public Object getItem(int position) { return position; } /** * Use the array index as a unique id. * @see android.widget.ListAdapter#getItemId(int) */ public long getItemId(int position) { return position; } /** * Make a DescriptionView to hold each row. * @see android.widget.ListAdapter#getView(int, android.view.View, android.view.ViewGroup) */ public View getView(int position, View convertView, ViewGroup parent) { DescriptionView dv; if (convertView == null) { dv = new DescriptionView(mContext, mTitles[position], mDescription[position], mExpanded[position]); } else { dv = (DescriptionView)convertView; dv.setTitle(mTitles[position]); dv.setDescription(mDescription[position]); dv.setExpanded(mExpanded[position]); } return dv; } public void toggle(int position) { mExpanded[position] = !mExpanded[position]; notifyDataSetChanged(); } /** * Remember our context so we can use it when constructing views. */ private Context mContext; /** * Our data, part 1. */ private String[] mTitles = { "Bachelor of Business", "Bachelor of Business (Honours)" }; private String[] mDescription = { "This programme provides you with a broadly-based business education" + " to assist you to work successfully in business. You will study a variety " + "of business subjects and develop a general understandng of the administrative, " + "economics, legal, and social environment within which business operates. You will " + "study the basics of business and get an insight into many business disciplines" + " in years one and two. In year three you can specialise in Marketing, Human" + " Resource Management, or Information Systems Management. There is a strong " + "emphasis during the programme on practical business projects to develop the" + "skills required by graduates in the workplace. (Students may apply to the" + " Registrar for a Higher Certificate in Business after successfully completing " + "two years of the programme.)", "The School of Business offers a four-year honours degree (Level 8) in Business. " + "This programme provides students with a broad-based business education to work" + " successfully in business and offers students the opportunity to specialise in one " + "of five streams. You will study a variety of business subjects and develop a general" + " understanding of the administrative, economic, legal and social environment within" + " which business operates. You will study the basics of business and get an insight" + " into many business disciplines in years one and two. In year three you can specialise " + "in marketing, human resource management or information systems management. In year four " + "you can specialise in economics and finance, human resource management, management," + " marketing or rural enterprise and agri-business. There is a strong emphasis on the" + " current business environment and acquiring the skills and knowledge required for " + "employment in business. Case studies and practical business projects are used to develop" + " students' analysis, communication and professional business skills." }; /** * Our data, part 3. */ private boolean[] mExpanded = { false, false, }; } /** * We will use a DescriptionView to display each speech. It's just a LinearLayout * with two text fields. * */ private class DescriptionView extends LinearLayout { private TextView mTitle; private TextView mDescription; public DescriptionView(Context context, String title, String desc, boolean expanded) { super(context); this.setOrientation(VERTICAL); // Here we build the child views in code. They could also have // been specified in an XML file. mTitle = new TextView(context); mTitle.setText(title); addView(mTitle, new LinearLayout.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT)); mDescription.setText(desc); addView(mDescription, new LinearLayout.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT)); mDescription.setVisibility(expanded ? VISIBLE : GONE); } /** * Convenience method to set the title of a DescriptionView */ public void setTitle(String title) { mTitle.setText(title); } /** * Convenience method to set the description of a DescriptionView */ public void setDescription(String words) { mDescription.setText(words); } /** * Convenience method to expand or hide the description */ public void setExpanded(boolean expanded) { mDescription.setVisibility(expanded ? VISIBLE : GONE); } } } </code></pre> <p>here is the log cat:</p> <pre><code>03-25 13:34:07.753: E/AndroidRuntime(912): FATAL EXCEPTION: main 03-25 13:34:07.753: E/AndroidRuntime(912): java.lang.NullPointerException 03-25 13:34:07.753: E/AndroidRuntime(912): at ie.gmit.gmitapp.BusinessActivity$DescriptionView.&lt;init&gt;(BusinessActivity.java:174) 03-25 13:34:07.753: E/AndroidRuntime(912): at ie.gmit.gmitapp.BusinessActivity$BusinessListAdapter.getView(BusinessActivity.java:82) 03-25 13:34:07.753: E/AndroidRuntime(912): at android.widget.AbsListView.obtainView(AbsListView.java:2159) 03-25 13:34:07.753: E/AndroidRuntime(912): at android.widget.ListView.makeAndAddView(ListView.java:1831) </code></pre> <p>line 174 is</p> <pre><code>mDescription.setText(desc) </code></pre> <p>and line 82 is</p> <pre><code>dv = new DescriptionView(mContext, mTitles[position], mDescription[position], mExpanded[position]); </code></pre>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload