I know how to update UI from **BroadcastReceiver**(When BroadcaseReceiver is an inner class).  

So here is what i am trying to achieve.  

(FOR Test Purpose) I have an activity, which has a `LinearLayout(R.id.parent)` which has a child `TextView(R.id.text)`. I want to update this `TextView` from Broadcast Receiver.  

For that I am passing Parent view in BroadcastReceiver constructor.And inside `onReceive(Context context,Intent i)` i am setting value `(textView,setText("something"))`.
But i am getting `NullPointerException`. I debugged it and found that View received in constructor is null . What i am missing here ? 

> 
> Here is the code snippet
> 
> 
> 

```
public class CustomReceiver extends BroadcastReceiver {

View view;

public CustomReceiver (View v)    // <-- This v is null in Logs but it is not null in activity
{
    this.view = view;
}

@Override
public void onReceive(Context context, Intent intent) {

    if (intent.getAction().equalsIgnoreCase("Some String")) {

        TextView text= (TextView)view.findViewById(R.id.text);
         text.setText("WINTER IS COMING BRUH");
    }
}
}

```

> 
> This it the activity
> 
> 
> 

```
protected void onCreate(Bundle savedInstanceState)
{
    super.onCreate(savedInstanceState);
    setContentView(R.layout.seach_page_layout);

    text = (TextView)findViewById(R.id.text);
    IntentFilter filter = new IntentFilter();
    filter.addAction("Some String");
    View parent = (View)findViewById(R.id.parent);
    BroadcastReceiver receiver = new CustomReceiver (parent);    
    registerReceiver(receiver ,filter);
}

```

> 
> Here is the layout
> 
> 
> 

```
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/parent"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    />
 >

<TextView
    android:id="@+id/text"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    />
   </LinearLayout>

```