Undefined Index. But isset not working?

Try this:

<?php 
 if ( isset($theme_global['social-twitter']) && '' != $theme_global['social-twitter'] ) { ?>
  <li><a class="social-twitter" href="https://wordpress.stackexchange.com/questions/160322/<?php echo $theme_global["social-twitter']; ?>" title="<?php _e( 'View Twitter Profile', 'lang' ); ?>" target="_blank"><i class="fa fa-twitter"></i><div class="tooltip"><span>    Twitter</span></div></a></li>
<?php } ?>

First check by isset and then check if that value is empty. If it has value then display it.