Q:

fetching values from server for multiselect picker react native

I tried fetching values from server for multi select picker component from the package https://github.com/toystars/react-native-multiple-select. But i get an error message:  TypeError: null is not an object(evaluating this.state.LangKnown).
Please Kindly help.Thank u
My JSON values
{
 "MFBasic": {
   "SkinTones": "DARK,FAIR,VFAIR",
   "Build": "SLIM,ATHLETIC,PLUMPY",
   "Gender": "F,M,T",
   "Genre": "ACTION,COMEDY,DRAMA",
   "Languages": "ENG,HINDI,TAM",
   "MediaModes": "ADS,MOVIES,SHORTFILMS",
   "Tags": "BIKES,HOME,JEWELLARY"
  },
 "Result": "Successfully Loaded MF Basic Details",
 "Code": 100

}
 import React, {Component} from "react";
 import { Text, View, StyleSheet, Picker, Alert } from "react-native";
 import MultiSelect from "react-native-multiple-select";

export default class App extends React.Component {
  state = {
    LangPickerValueHolder: [],
    LangKnown: []
  }

  componentDidMount () {
    fetch('https://movieworld.sramaswamy.com/GetMFBasicDetails.php', {
      method: 'POST',
      headers: {
        'Accept': 'application/json',
        'Content-Type': 'application/json'
      }
    }).then(response => response.json())
      .then(responseJson => {
        let langString = responseJson.MFBasic.Languages;
        let langArray = langString.split(',');
        this.setState({
          LangPickerValueHolder: langArray
        });
      }).catch(error => {
        console.error(error);
      });
  }

  render () {
    return (

      <View style={styles.itemContainer}>
        {<MultiSelect
          ref={(component) => { this.multiSelect = component; }}
          onSelectedItemsChange={(value) =>
            this.setState({ LangKnown: value })
          }
          selectedItems={this.state.LangKnown}
          onChangeInput={ (text) => console.log(text)}
          displayKey = ''name
          submitButtonText="Submit">
          {this.state.LangPickerValueHolder.map((item, key) => (
            <MultiSelect.Item item = {item} uniqueKey = {key}/>
          ))}
        </MultiSelect>}
      </View>
    );
  }
}

A:

You've made a good attempt at how to set up the MultiSelect however there are a couple of issues that need to be resolved. 
If you look at the dependency the data that should be passed to it should be an array of objects. The example gives the object as { id: '92iijs7yta', name: 'Ondo' } We can easily transform your data from an array of strings into an array of objects that match the example. 
let LangPickerValueHolder = langArray.map((name, id) => { return { name, id }; });

Using a map we can convert the array. 
This would make your componentDidMount look like the following: 
componentDidMount () {
  fetch('https://movieworld.sramaswamy.com/GetMFBasicDetails.php', {
    method: 'POST',
    headers: {
      'Accept': 'application/json',
      'Content-Type': 'application/json'
    }
  }).then(response => response.json())
    .then(responseJson => {
      let langString = responseJson.MFBasic.Languages;
      let langArray = langString.split(',');
      let LangPickerValueHolder = langArray.map((name, id) => { return { name, id }; }); // <- here we had the mapping function
      this.setState({ LangPickerValueHolder }); // <- save the new array of objects into the state
      console.log(langArray);
    }).catch(error => {
      console.error(error);
    });
}

Setting up the MultiSelect component requires a few more changes. 
Firstly there is no MultiSelect.Item so the map that you are using to populate the MultiSelect won't work. Instead you need to use the items prop to set the items. Next you need to tell the MultiSelect component the correct uniqueKey prop (which in our case will be id) and set the displayKey correctly. 
Here is what your render could look like.
render () {
  return (
    <View style={styles.container}>
      <MultiSelect
        ref={(component) => { this.multiSelect = component; }}
        onSelectedItemsChange={(value) =>
          this.setState({ LangKnown: value })
        }
        uniqueKey="id"
        items={this.state.LangPickerValueHolder} 
        selectedItems={this.state.LangKnown}
        onChangeInput={ (text) => console.log(text)}
        displayKey = 'name'
        submitButtonText="Submit" />
    </View>
  );
}

Here is it put together in a snack: https://snack.expo.io/@andypandy/multiselect-with-data-from-api
Here is the code from the snack:
import React from 'react';
import { View, StyleSheet } from 'react-native';
import MultiSelect from 'react-native-multiple-select';

export default class App extends React.Component {
  // declaring state like this is absolutely fine, it doesn't need to be in a constructor
  state = {
    LangPickerValueHolder: [],
    LangKnown: []
  }

  componentDidMount () {
    fetch('https://movieworld.sramaswamy.com/GetMFBasicDetails.php', {
      method: 'POST',
      headers: {
        'Accept': 'application/json',
        'Content-Type': 'application/json'
      }
    }).then(response => response.json())
      .then(responseJson => {
        let langString = responseJson.MFBasic.Languages;
        let langArray = langString.split(',');
        let LangPickerValueHolder = langArray.map((name, id) => { return { name, id }; });
        this.setState({
          LangPickerValueHolder
        });
        console.log(langArray);
      }).catch(error => {
        console.error(error);
      });
  }

  render () {
    return (
      <View style={styles.container}>
        <MultiSelect
          ref={(component) => { this.multiSelect = component; }}
          onSelectedItemsChange={(value) =>
            this.setState({ LangKnown: value })
          }
          uniqueKey="id" // <- set the value for the uniqueKey
          items={this.state.LangPickerValueHolder} // <- set the items you wish to show
          selectedItems={this.state.LangKnown}
          onChangeInput={ (text) => console.log(text)}
          displayKey = 'name' .   // <- fix typo here
          submitButtonText="Submit" />
      </View>
    );
  }
}

const styles = StyleSheet.create({
  container: {
    flex: 1,
    justifyContent: 'center',
    backgroundColor: 'white',
    padding: 8
  }
});

